inner banner images are updated
@ -1607,7 +1607,7 @@ only screen and (min-width: 576px) and (max-width: 767px) {
|
|||||||
position: relative;
|
position: relative;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-inline-end: 30px;
|
margin-inline-end: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.main-menu ul li:last-child {
|
.main-menu ul li:last-child {
|
||||||
@ -3957,10 +3957,10 @@ p.banner-text {
|
|||||||
background-position: left bottom;
|
background-position: left bottom;
|
||||||
}
|
}
|
||||||
|
|
||||||
.choose-section figure.image {
|
/* .choose-section figure.image {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding-top: 60px;
|
padding-top: 60px;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.choose-section .section-title {
|
.choose-section .section-title {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
@ -4021,17 +4021,17 @@ p.banner-text {
|
|||||||
|
|
||||||
@media only screen and (max-width: 1400px) {
|
@media only screen and (max-width: 1400px) {
|
||||||
|
|
||||||
.choose-section .bg-image {
|
/* .choose-section .bg-image {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.choose-section figure.image {
|
/* .choose-section figure.image {
|
||||||
padding-right: 120px;
|
padding-right: 120px;
|
||||||
}
|
} */
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (max-width: 1199px) {
|
/* @media only screen and (max-width: 1199px) {
|
||||||
|
|
||||||
.choose-section figure.image {
|
.choose-section figure.image {
|
||||||
display: none;
|
display: none;
|
||||||
@ -4039,7 +4039,7 @@ p.banner-text {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
} */
|
||||||
|
|
||||||
/*----------------------------------------*/
|
/*----------------------------------------*/
|
||||||
/* TESTIMONIALS CSS START
|
/* TESTIMONIALS CSS START
|
||||||
|
|||||||
BIN
public/assets/images/innerbanner/left/left-about.webp
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/assets/images/innerbanner/left/left-app-development.webp
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
BIN
public/assets/images/innerbanner/left/left-blog-details.webp
Normal file
|
After Width: | Height: | Size: 8.1 KiB |
BIN
public/assets/images/innerbanner/left/left-blog.webp
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
public/assets/images/innerbanner/left/left-career.webp
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
public/assets/images/innerbanner/left/left-contact.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 20 KiB |
BIN
public/assets/images/innerbanner/left/left-faq.webp
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
public/assets/images/innerbanner/left/left-graphic-design.webp
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
public/assets/images/innerbanner/left/left-portfolio.webp
Normal file
|
After Width: | Height: | Size: 8.3 KiB |
BIN
public/assets/images/innerbanner/left/left-seo-content.webp
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
public/assets/images/innerbanner/left/left-services.webp
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/assets/images/innerbanner/left/left-ui-ux.webp
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
public/assets/images/innerbanner/left/left-web-development.webp
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
public/assets/images/innerbanner/right/right-about.webp
Normal file
|
After Width: | Height: | Size: 134 KiB |
BIN
public/assets/images/innerbanner/right/right-app-dev.webp
Normal file
|
After Width: | Height: | Size: 105 KiB |
BIN
public/assets/images/innerbanner/right/right-blog-details.webp
Normal file
|
After Width: | Height: | Size: 75 KiB |
BIN
public/assets/images/innerbanner/right/right-blog.webp
Normal file
|
After Width: | Height: | Size: 170 KiB |
BIN
public/assets/images/innerbanner/right/right-careers.webp
Normal file
|
After Width: | Height: | Size: 184 KiB |
BIN
public/assets/images/innerbanner/right/right-contact.webp
Normal file
|
After Width: | Height: | Size: 54 KiB |
BIN
public/assets/images/innerbanner/right/right-digital.webp
Normal file
|
After Width: | Height: | Size: 128 KiB |
BIN
public/assets/images/innerbanner/right/right-faq.webp
Normal file
|
After Width: | Height: | Size: 157 KiB |
BIN
public/assets/images/innerbanner/right/right-graphic.webp
Normal file
|
After Width: | Height: | Size: 140 KiB |
BIN
public/assets/images/innerbanner/right/right-portfolio.webp
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
public/assets/images/innerbanner/right/right-seo.webp
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
public/assets/images/innerbanner/right/right-services.webp
Normal file
|
After Width: | Height: | Size: 182 KiB |
BIN
public/assets/images/innerbanner/right/right-ui-ux.webp
Normal file
|
After Width: | Height: | Size: 107 KiB |
BIN
public/assets/images/innerbanner/right/right-web-dev.webp
Normal file
|
After Width: | Height: | Size: 122 KiB |
@ -45,14 +45,18 @@ export default function Home2() {
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="About Us" />
|
<PageHeader
|
||||||
|
title="About Us"
|
||||||
|
bannerLeftImage="/assets/images/innerbanner/left/left-about.webp"
|
||||||
|
bannerRightImage="/assets/images/innerbanner/right/right-about.webp"
|
||||||
|
/>
|
||||||
{/* <FeaturesSection /> */}
|
{/* <FeaturesSection /> */}
|
||||||
<About2Section />
|
<About2Section />
|
||||||
{/* <CounterAreaTwo /> */}
|
{/* <CounterAreaTwo /> */}
|
||||||
<CouterAreaThree />
|
<CouterAreaThree />
|
||||||
{/* <IconCounterSection /> */}
|
{/* <IconCounterSection /> */}
|
||||||
<WhyChooseTwo />
|
<WhyChooseTwo />
|
||||||
|
|
||||||
{/* <HelpFormSection /> */}
|
{/* <HelpFormSection /> */}
|
||||||
{/* <WhyChooseSection /> */}
|
{/* <WhyChooseSection /> */}
|
||||||
{/* <WhyChooseUs /> */}
|
{/* <WhyChooseUs /> */}
|
||||||
|
|||||||
@ -8,8 +8,12 @@ import InnerBanner from "@/components/common/InnerBanner";
|
|||||||
import { BlogType } from "@/types";
|
import { BlogType } from "@/types";
|
||||||
import PageHeader from "@/components/common/PageHeader";
|
import PageHeader from "@/components/common/PageHeader";
|
||||||
|
|
||||||
|
import Link from "next/link";
|
||||||
|
import { BlogData } from "@/utils/constant.utils";
|
||||||
|
import BlogCard from "@/components/cards/BlogCard";
|
||||||
|
|
||||||
interface BlogDetailsClientProps {
|
interface BlogDetailsClientProps {
|
||||||
blog: BlogType | undefined;
|
blog: any | undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function BlogDetailsClient({ blog }: BlogDetailsClientProps) {
|
export default function BlogDetailsClient({ blog }: BlogDetailsClientProps) {
|
||||||
@ -43,16 +47,82 @@ export default function BlogDetailsClient({ blog }: BlogDetailsClientProps) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Date sorting for "All Blogs"
|
||||||
|
const sortedBlogs = [...BlogData].sort(
|
||||||
|
(a, b) => new Date(b.date).getTime() - new Date(a.date).getTime()
|
||||||
|
);
|
||||||
|
|
||||||
|
// Find a related blog (different from current, same category if possible, else just next one)
|
||||||
|
const relatedBlog = BlogData.find((b: any) => b.id !== blog.id && b.category === blog.category) ||
|
||||||
|
BlogData.find((b: any) => b.id !== blog.id) ||
|
||||||
|
BlogData[0];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="Blog Details" />
|
<PageHeader
|
||||||
|
title="Blog Details"
|
||||||
|
bannerLeftImage={blog.bannerLeftImage}
|
||||||
|
bannerRightImage={blog.bannerRightImage}
|
||||||
|
/>
|
||||||
|
|
||||||
<section className="blog-details-area section-space">
|
<section className="blog-details-area section-space">
|
||||||
<div className="container">
|
<div className="container">
|
||||||
<div className="row justify-content-center">
|
<div className="row gutter-y-30 ">
|
||||||
<div className="col-lg-10">
|
<div className="col-md-12 col-lg-4">
|
||||||
|
<div className="service-sidebar">
|
||||||
|
<div className="service-sidebar__single">
|
||||||
|
<h3 className="service-sidebar__title">All Blogs</h3>
|
||||||
|
<ul className="list-unstyled service-sidebar__nav">
|
||||||
|
{sortedBlogs.map((item: any) => (
|
||||||
|
<li key={item.id} className={item.slug === blog.slug ? "active" : ""}>
|
||||||
|
<Link href={`/blog/${item.slug}`}>
|
||||||
|
{item.title}
|
||||||
|
<i className="fa-solid fa-chevron-right"></i>
|
||||||
|
</Link>
|
||||||
|
</li>
|
||||||
|
))}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{relatedBlog && (
|
||||||
|
<div className="service-sidebar__single">
|
||||||
|
<h3 className="service-sidebar__title">Related Blog</h3>
|
||||||
|
<div className="blog-sidebar__related">
|
||||||
|
<div className="blog-style-one relative overflow-hidden">
|
||||||
|
<Link className="blog-image w-img block relative" href={`/blog/${relatedBlog.slug}`}>
|
||||||
|
<img src={relatedBlog.image} alt={relatedBlog.title} />
|
||||||
|
<span className="blog-category-tag">{relatedBlog.category}</span>
|
||||||
|
</Link>
|
||||||
|
<div className="blog-content">
|
||||||
|
<div className="post-meta">
|
||||||
|
<span className="p-relative">
|
||||||
|
<i className="fa-solid fa-user"></i> By Admin
|
||||||
|
</span>
|
||||||
|
<span className="p-relative">
|
||||||
|
<i className="fa-solid fa-calendar-days"></i> {relatedBlog.date}
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
<h5 className="blog-title mb-30" style={{ fontSize: '18px' }}>
|
||||||
|
<Link href={`/blog/${relatedBlog.slug}`}>{relatedBlog.title}</Link>
|
||||||
|
</h5>
|
||||||
|
<div className="blog-footer">
|
||||||
|
<div className="blog-link-learn">
|
||||||
|
<Link href={`/blog/${relatedBlog.slug}`} className="learn-more-link">
|
||||||
|
Learn More <span>+</span>
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="col-md-12 col-lg-8">
|
||||||
<div className="blog-details-content">
|
<div className="blog-details-content">
|
||||||
<div className="blog-details-img mb-40">
|
<div className="blog-details-img mb-40">
|
||||||
<img src={blog.big_image || blog.image} alt={blog.title} className="w-100" />
|
<img src={blog.big_image || blog.image} alt={blog.title} className="w-100" />
|
||||||
@ -80,7 +150,7 @@ export default function BlogDetailsClient({ blog }: BlogDetailsClientProps) {
|
|||||||
<h3 className="sec-title__title">Frequently Asked Questions</h3>
|
<h3 className="sec-title__title">Frequently Asked Questions</h3>
|
||||||
</div>
|
</div>
|
||||||
<div className="faq-one__accordion pelocis-accrodion">
|
<div className="faq-one__accordion pelocis-accrodion">
|
||||||
{blog.faq.map((item, index) => (
|
{blog.faq.map((item: any, index: number) => (
|
||||||
<div key={index} className={`accrodion ${activeIndex === index ? 'active' : ''}`}>
|
<div key={index} className={`accrodion ${activeIndex === index ? 'active' : ''}`}>
|
||||||
<div className="accrodion-title" onClick={() => toggleAccordion(index)}>
|
<div className="accrodion-title" onClick={() => toggleAccordion(index)}>
|
||||||
<div className="accrodion-title__shape"></div>
|
<div className="accrodion-title__shape"></div>
|
||||||
|
|||||||
@ -18,7 +18,11 @@ export default function BlogPage() {
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="Our Blog" />
|
<PageHeader
|
||||||
|
title="Our Blog"
|
||||||
|
bannerLeftImage="/assets/images/innerbanner/left/left-blog.webp"
|
||||||
|
bannerRightImage="/assets/images/innerbanner/right/right-blog.webp"
|
||||||
|
/>
|
||||||
{/* <div className="container section-space-top">
|
{/* <div className="container section-space-top">
|
||||||
<SectionTitle
|
<SectionTitle
|
||||||
tagline="LATEST NEWS"
|
tagline="LATEST NEWS"
|
||||||
|
|||||||
@ -28,12 +28,16 @@ export default function CareersPage() {
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="Careers" />
|
<PageHeader
|
||||||
|
title="Careers"
|
||||||
|
bannerLeftImage="/assets/images/innerbanner/left/left-career.webp"
|
||||||
|
bannerRightImage="/assets/images/innerbanner/right/right-careers.webp"
|
||||||
|
/>
|
||||||
<AboutService />
|
<AboutService />
|
||||||
{/* <AboutOneSection /> */}
|
{/* <AboutOneSection /> */}
|
||||||
<AboutThree />
|
<AboutThree />
|
||||||
<WhyChooseUs />
|
<WhyChooseUs />
|
||||||
<ProjectsSection/>
|
<ProjectsSection />
|
||||||
{/* <FaqVideoSection /> */}
|
{/* <FaqVideoSection /> */}
|
||||||
{/* <ContactSection /> */}
|
{/* <ContactSection /> */}
|
||||||
{/* <FeaturesSection /> */}
|
{/* <FeaturesSection /> */}
|
||||||
|
|||||||
@ -24,7 +24,11 @@ export default function ContactPage() {
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="Contact Us" />
|
<PageHeader
|
||||||
|
title="Contact Us"
|
||||||
|
bannerLeftImage="/assets/images/innerbanner/left/left-contact.webp"
|
||||||
|
bannerRightImage="/assets/images/innerbanner/right/right-contact.webp"
|
||||||
|
/>
|
||||||
<ContactSection />
|
<ContactSection />
|
||||||
<MapSection />
|
<MapSection />
|
||||||
</main>
|
</main>
|
||||||
|
|||||||
@ -27,7 +27,11 @@ export default function FaqPage() {
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="FAQ" />
|
<PageHeader
|
||||||
|
title="FAQ"
|
||||||
|
bannerLeftImage="/assets/images/innerbanner/left/left-faq.webp"
|
||||||
|
bannerRightImage="/assets/images/innerbanner/right/right-faq.webp"
|
||||||
|
/>
|
||||||
<FaqPageSection />
|
<FaqPageSection />
|
||||||
<FaqFour />
|
<FaqFour />
|
||||||
<FaqFive />
|
<FaqFive />
|
||||||
|
|||||||
@ -5328,8 +5328,8 @@ body {
|
|||||||
═══════════════════════════════════════════════════════════ */
|
═══════════════════════════════════════════════════════════ */
|
||||||
.home-contact-one {
|
.home-contact-one {
|
||||||
background-color: var(--pelocis-black, #1a1f2b);
|
background-color: var(--pelocis-black, #1a1f2b);
|
||||||
padding: 260px 0 112px;
|
padding: 80px 0 80px;
|
||||||
position: relative;
|
/* position: relative;
|
||||||
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
-webkit-mask-repeat: no-repeat;
|
-webkit-mask-repeat: no-repeat;
|
||||||
@ -5337,10 +5337,10 @@ body {
|
|||||||
-webkit-mask-position: top center;
|
-webkit-mask-position: top center;
|
||||||
mask-position: top center;
|
mask-position: top center;
|
||||||
-webkit-mask-size: cover;
|
-webkit-mask-size: cover;
|
||||||
mask-size: cover;
|
mask-size: cover; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.home-contact-one__bg {
|
/* .home-contact-one__bg {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -5350,7 +5350,7 @@ body {
|
|||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
opacity: 0.05;
|
opacity: 0.05;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.home-contact-one .home-contact__card {
|
.home-contact-one .home-contact__card {
|
||||||
padding: 32px;
|
padding: 32px;
|
||||||
@ -5551,8 +5551,8 @@ body {
|
|||||||
═══════════════════════════════════════════════════════════ */
|
═══════════════════════════════════════════════════════════ */
|
||||||
.home-contact-one {
|
.home-contact-one {
|
||||||
background-color: var(--pelocis-black, #1a1f2b);
|
background-color: var(--pelocis-black, #1a1f2b);
|
||||||
padding: 260px 0 112px;
|
padding: 80px 0 80px;
|
||||||
position: relative;
|
/* position: relative;
|
||||||
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
-webkit-mask-repeat: no-repeat;
|
-webkit-mask-repeat: no-repeat;
|
||||||
@ -5560,10 +5560,10 @@ body {
|
|||||||
-webkit-mask-position: top center;
|
-webkit-mask-position: top center;
|
||||||
mask-position: top center;
|
mask-position: top center;
|
||||||
-webkit-mask-size: cover;
|
-webkit-mask-size: cover;
|
||||||
mask-size: cover;
|
mask-size: cover; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.home-contact-one__bg {
|
/* .home-contact-one__bg {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -5573,7 +5573,7 @@ body {
|
|||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
opacity: 0.05;
|
opacity: 0.05;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.home-contact-one .home-contact__card {
|
.home-contact-one .home-contact__card {
|
||||||
padding: 32px;
|
padding: 32px;
|
||||||
@ -5785,8 +5785,8 @@ body {
|
|||||||
═══════════════════════════════════════════════════════════ */
|
═══════════════════════════════════════════════════════════ */
|
||||||
.home-contact-one {
|
.home-contact-one {
|
||||||
background-color: var(--pelocis-black, #1a1f2b);
|
background-color: var(--pelocis-black, #1a1f2b);
|
||||||
padding: 260px 0 112px;
|
padding: 80px 0 80px;
|
||||||
position: relative;
|
/* position: relative;
|
||||||
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
-webkit-mask-repeat: no-repeat;
|
-webkit-mask-repeat: no-repeat;
|
||||||
@ -5794,10 +5794,10 @@ body {
|
|||||||
-webkit-mask-position: top center;
|
-webkit-mask-position: top center;
|
||||||
mask-position: top center;
|
mask-position: top center;
|
||||||
-webkit-mask-size: cover;
|
-webkit-mask-size: cover;
|
||||||
mask-size: cover;
|
mask-size: cover; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.home-contact-one__bg {
|
/* .home-contact-one__bg {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -5807,7 +5807,7 @@ body {
|
|||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
opacity: 0.05;
|
opacity: 0.05;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.home-contact-one .home-contact__card {
|
.home-contact-one .home-contact__card {
|
||||||
padding: 32px;
|
padding: 32px;
|
||||||
@ -6019,8 +6019,8 @@ body {
|
|||||||
═══════════════════════════════════════════════════════════ */
|
═══════════════════════════════════════════════════════════ */
|
||||||
.home-contact-one {
|
.home-contact-one {
|
||||||
background-color: var(--pelocis-black, #1a1f2b);
|
background-color: var(--pelocis-black, #1a1f2b);
|
||||||
padding: 260px 0 112px;
|
padding: 80px 0 80px;
|
||||||
position: relative;
|
/* position: relative;
|
||||||
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1920 969' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path d='M0 124.777L235.25 40.1068L470.5 101.505L939.5 0L1294 127.252H1607H1920V969H0V124.777Z'/></svg>");
|
||||||
-webkit-mask-repeat: no-repeat;
|
-webkit-mask-repeat: no-repeat;
|
||||||
@ -6028,10 +6028,10 @@ body {
|
|||||||
-webkit-mask-position: top center;
|
-webkit-mask-position: top center;
|
||||||
mask-position: top center;
|
mask-position: top center;
|
||||||
-webkit-mask-size: cover;
|
-webkit-mask-size: cover;
|
||||||
mask-size: cover;
|
mask-size: cover; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.home-contact-one__bg {
|
/* .home-contact-one__bg {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -6041,7 +6041,7 @@ body {
|
|||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
opacity: 0.05;
|
opacity: 0.05;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.home-contact-one .home-contact__card {
|
.home-contact-one .home-contact__card {
|
||||||
padding: 32px;
|
padding: 32px;
|
||||||
@ -6255,7 +6255,7 @@ body {
|
|||||||
content: "";
|
content: "";
|
||||||
position: absolute;
|
position: absolute;
|
||||||
inset: 0;
|
inset: 0;
|
||||||
background: linear-gradient(270.07deg, #002b98 0.07%, #00060c 99.95%);
|
background: linear-gradient(90deg, #1a1f2b 0%, #3779b9 60%, #1a1f2b 100%) !important;
|
||||||
opacity: 0.8;
|
opacity: 0.8;
|
||||||
z-index: -1;
|
z-index: -1;
|
||||||
}
|
}
|
||||||
@ -6294,7 +6294,7 @@ body {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
left: -8px;
|
left: -8px;
|
||||||
bottom: 0px;
|
bottom: 0px;
|
||||||
background-color: var(--pelocis-base, #3779b9);
|
background-color: var(--pelocis-base, #1a1f2b);
|
||||||
height: 326px;
|
height: 326px;
|
||||||
width: 337px;
|
width: 337px;
|
||||||
clip-path: polygon(60% 0, 100% 0, 100% 100%, 0% 100%);
|
clip-path: polygon(60% 0, 100% 0, 100% 100%, 0% 100%);
|
||||||
@ -6367,6 +6367,7 @@ body {
|
|||||||
left: 20px;
|
left: 20px;
|
||||||
bottom: 20px;
|
bottom: 20px;
|
||||||
animation: zumpBottom 2s linear infinite;
|
animation: zumpBottom 2s linear infinite;
|
||||||
|
opacity: 0.3;
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes moveRight {
|
@keyframes moveRight {
|
||||||
@ -6432,20 +6433,18 @@ body {
|
|||||||
|
|
||||||
.faq-four__content {
|
.faq-four__content {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding: 60px 0 60px;
|
/* padding: 60px 0 60px; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.faq-four__image2 img {
|
.faq-four__image2 img {
|
||||||
min-height: 650px;
|
min-height: 650px;
|
||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
clip-path: polygon(
|
clip-path: polygon(0 0,
|
||||||
0 0,
|
100% 0,
|
||||||
100% 0,
|
88% 50%,
|
||||||
88% 50%,
|
100% 100%,
|
||||||
100% 100%,
|
0 100%);
|
||||||
0 100%
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.faq-four__image2__icon {
|
.faq-four__image2__icon {
|
||||||
@ -6481,6 +6480,7 @@ body {
|
|||||||
z-index: -1;
|
z-index: -1;
|
||||||
animation: textRotate 15s linear 0s forwards infinite alternate;
|
animation: textRotate 15s linear 0s forwards infinite alternate;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* .faq-four__content .sec-title {
|
/* .faq-four__content .sec-title {
|
||||||
padding-bottom: 21px;
|
padding-bottom: 21px;
|
||||||
} */
|
} */
|
||||||
@ -6532,7 +6532,7 @@ body {
|
|||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
color: var(--pelocis-black, #1a1f2b);
|
color: var(--pelocis-black, #1a1f2b);
|
||||||
font-family: var(--pelocis-font);
|
font-family: var(--pelocis-font);
|
||||||
font-size: 16px;
|
font-size: 18px !important;
|
||||||
line-height: 25px;
|
line-height: 25px;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
transition: all 500ms ease;
|
transition: all 500ms ease;
|
||||||
@ -7842,7 +7842,7 @@ body {
|
|||||||
padding-top: 110px;
|
padding-top: 110px;
|
||||||
padding-bottom: 120px;
|
padding-bottom: 120px;
|
||||||
counter-reset: count;
|
counter-reset: count;
|
||||||
background-color: var(--pelocis-gray, #F5F2EF);
|
/* background-color: var(--pelocis-gray, #F5F2EF); */
|
||||||
}
|
}
|
||||||
|
|
||||||
.projects-one__title {
|
.projects-one__title {
|
||||||
@ -8182,7 +8182,7 @@ body {
|
|||||||
|
|
||||||
.service-details__benefit__list li {
|
.service-details__benefit__list li {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: start;
|
align-items: flex-start;
|
||||||
gap: 12px;
|
gap: 12px;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
color: #64748b;
|
color: #64748b;
|
||||||
@ -9297,7 +9297,7 @@ body {
|
|||||||
.faq-two .primary-btn-1-link {
|
.faq-two .primary-btn-1-link {
|
||||||
background: #3779b9;
|
background: #3779b9;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding: 18px 45px;
|
padding: 18px 35px;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
border: none;
|
border: none;
|
||||||
@ -10518,6 +10518,15 @@ body {
|
|||||||
box-shadow: 0 10px 25px rgba(99, 102, 241, 0.1);
|
box-shadow: 0 10px 25px rgba(99, 102, 241, 0.1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (max-width: 424px) {
|
||||||
|
.contact-area .contact-info-item .icon {
|
||||||
|
width: 0px;
|
||||||
|
height: 0px;
|
||||||
|
margin-right: 20px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.contact-area .contact-info-item:hover .icon {
|
.contact-area .contact-info-item:hover .icon {
|
||||||
background: #3779b9;
|
background: #3779b9;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
@ -11399,4 +11408,217 @@ body {
|
|||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
line-height: 1.6;
|
line-height: 1.6;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ═══════════════════════════════════════════════════════════
|
||||||
|
FIX: Global Responsiveness & Overflow (requested breakpoints)
|
||||||
|
═══════════════════════════════════════════════════════════ */
|
||||||
|
|
||||||
|
/* Prevent horizontal overflow globally */
|
||||||
|
html,
|
||||||
|
body {
|
||||||
|
overflow-x: hidden !important;
|
||||||
|
width: 100%;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Base fixes for Hero and About */
|
||||||
|
.banner-title {
|
||||||
|
word-wrap: break-word;
|
||||||
|
overflow-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
.working-area {
|
||||||
|
transition: all 0.3s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1920px - 1600px */
|
||||||
|
@media (max-width: 1920px) {
|
||||||
|
.large-container {
|
||||||
|
max-width: 1720px !important;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 1600px) {
|
||||||
|
.large-container {
|
||||||
|
max-width: 1550px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 56px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1540px */
|
||||||
|
@media (max-width: 1540px) {
|
||||||
|
.large-container {
|
||||||
|
max-width: 1480px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 52px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1440px */
|
||||||
|
@media (max-width: 1440px) {
|
||||||
|
.large-container {
|
||||||
|
max-width: 1380px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 50px !important;
|
||||||
|
line-height: 1.2 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1360px */
|
||||||
|
@media (max-width: 1360px) {
|
||||||
|
.large-container {
|
||||||
|
max-width: 1300px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1200px */
|
||||||
|
@media (max-width: 1200px) {
|
||||||
|
.large-container {
|
||||||
|
max-width: 1140px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 48px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.about-us-image-area .working-area {
|
||||||
|
left: -20px !important;
|
||||||
|
top: 40px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1024px */
|
||||||
|
@media (max-width: 1024px) {
|
||||||
|
.large-container {
|
||||||
|
max-width: 960px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 42px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 992px */
|
||||||
|
@media (max-width: 992px) {
|
||||||
|
.banner-main {
|
||||||
|
padding: 150px 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 38px !important;
|
||||||
|
line-height: 1.3 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.banner-area {
|
||||||
|
padding-left: 20px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 768px */
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.banner-main {
|
||||||
|
padding: 100px 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 34px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.about-us-image-area .working-area {
|
||||||
|
left: 0 !important;
|
||||||
|
top: 0 !important;
|
||||||
|
position: relative !important;
|
||||||
|
display: inline-block !important;
|
||||||
|
margin-bottom: 20px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Inner page banner fixes */
|
||||||
|
.page-header__bg {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-header__shape {
|
||||||
|
width: 30% !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 500px */
|
||||||
|
@media (max-width: 500px) {
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 28px !important;
|
||||||
|
line-height: 1.2 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.banner-sub-title {
|
||||||
|
font-size: 14px !important;
|
||||||
|
letter-spacing: 5px !important;
|
||||||
|
margin-left: 40px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.banner-sub-title:before {
|
||||||
|
left: -40px !important;
|
||||||
|
width: 30px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 425px */
|
||||||
|
@media (max-width: 425px) {
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 26px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.banner-btn-area {
|
||||||
|
flex-direction: column !important;
|
||||||
|
gap: 15px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 375px */
|
||||||
|
@media (max-width: 375px) {
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 24px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.banner-area {
|
||||||
|
padding-left: 15px !important;
|
||||||
|
padding-right: 15px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 320px */
|
||||||
|
@media (max-width: 320px) {
|
||||||
|
h1.banner-title {
|
||||||
|
font-size: 22px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.banner-main {
|
||||||
|
padding: 80px 0 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.page-header__bg {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-header {
|
||||||
|
|
||||||
|
padding: 100px 0 !important;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.page-header__shape {
|
||||||
|
width: 30%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -28,7 +28,11 @@ export default function PortfolioPage() {
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="Our Portfolio" />
|
<PageHeader
|
||||||
|
title="Our Portfolio"
|
||||||
|
bannerLeftImage="/assets/images/innerbanner/left/left-portfolio.webp"
|
||||||
|
bannerRightImage="/assets/images/innerbanner/right/right-portfolio.webp"
|
||||||
|
/>
|
||||||
<PortfolioSection />
|
<PortfolioSection />
|
||||||
</main>
|
</main>
|
||||||
<Footer1 />
|
<Footer1 />
|
||||||
|
|||||||
@ -25,7 +25,11 @@ export default async function ServiceDetailsPage({ params }: { params: Promise<{
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title={service.title} />
|
<PageHeader
|
||||||
|
title={service.title}
|
||||||
|
bannerLeftImage={service.bannerLeftImage}
|
||||||
|
bannerRightImage={service.bannerRightImage}
|
||||||
|
/>
|
||||||
<ServiceDetails service={service} />
|
<ServiceDetails service={service} />
|
||||||
</main>
|
</main>
|
||||||
<Footer1 />
|
<Footer1 />
|
||||||
|
|||||||
@ -42,7 +42,11 @@ export default function Home3() {
|
|||||||
<>
|
<>
|
||||||
<Header1 />
|
<Header1 />
|
||||||
<main>
|
<main>
|
||||||
<PageHeader title="Our Services" />
|
<PageHeader
|
||||||
|
title="Our Services"
|
||||||
|
bannerLeftImage="/assets/images/innerbanner/left/left-services.webp"
|
||||||
|
bannerRightImage="/assets/images/innerbanner/right/right-services.webp"
|
||||||
|
/>
|
||||||
<FeaturesSection />
|
<FeaturesSection />
|
||||||
<ChooseSection />
|
<ChooseSection />
|
||||||
{/* <HelpFormSection /> */}
|
{/* <HelpFormSection /> */}
|
||||||
|
|||||||
@ -12,9 +12,12 @@ import CaseStudies from "@/components/web-development-service/CaseStudies";
|
|||||||
import Testimonial from "@/components/web-development-service/Testimonial";
|
import Testimonial from "@/components/web-development-service/Testimonial";
|
||||||
import FAQ from "@/components/web-development-service/FAQ";
|
import FAQ from "@/components/web-development-service/FAQ";
|
||||||
import Pricing from "@/components/web-development-service/Pricing";
|
import Pricing from "@/components/web-development-service/Pricing";
|
||||||
|
import { ourServices } from "@/utils/data";
|
||||||
import "@/components/web-development-service/style.css";
|
import "@/components/web-development-service/style.css";
|
||||||
|
|
||||||
export default function WebsiteDevelopmentService() {
|
export default function WebsiteDevelopmentService() {
|
||||||
|
const service = ourServices.find((s) => s.slug === "web-development");
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<MainLayout>
|
<MainLayout>
|
||||||
<Hero />
|
<Hero />
|
||||||
@ -28,7 +31,7 @@ export default function WebsiteDevelopmentService() {
|
|||||||
<CaseStudies />
|
<CaseStudies />
|
||||||
<Pricing />
|
<Pricing />
|
||||||
<Testimonial />
|
<Testimonial />
|
||||||
<FAQ />
|
<FAQ faqData={service?.faq} />
|
||||||
</MainLayout>
|
</MainLayout>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,12 +29,12 @@ const BlogCard: React.FC<BlogCardProps> = ({ blog }) => {
|
|||||||
</div>
|
</div>
|
||||||
<div className="space20"></div>
|
<div className="space20"></div>
|
||||||
<h4 className="vl-blog-1-title">
|
<h4 className="vl-blog-1-title">
|
||||||
<Link href="/blogs/single">{blog.title}</Link>
|
<Link href={`/blog/${blog.slug}`}>{blog.title}</Link>
|
||||||
</h4>
|
</h4>
|
||||||
<div className="space16"></div>
|
<div className="space16"></div>
|
||||||
<p>{blog.description}</p>
|
<p>{blog.description}</p>
|
||||||
<div className="vl-blog-1-icon">
|
<div className="vl-blog-1-icon">
|
||||||
<Link href="/blogs/single">
|
<Link href={`/blog/${blog.slug}`}>
|
||||||
<i className="fa-solid fa-arrow-right"></i>
|
<i className="fa-solid fa-arrow-right"></i>
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -157,7 +157,7 @@ const FaqVideoSection = () => {
|
|||||||
</select>
|
</select>
|
||||||
{formErrors.service && <small className="faq-error">{formErrors.service}</small>}
|
{formErrors.service && <small className="faq-error">{formErrors.service}</small>}
|
||||||
</div>
|
</div>
|
||||||
<div className="col-md-12 mb-20">
|
<div className="col-md-12 mb-20" style={{ overflow: "hidden" }}>
|
||||||
<label className="faq-form-label">Write Message</label>
|
<label className="faq-form-label">Write Message</label>
|
||||||
<textarea
|
<textarea
|
||||||
name="message"
|
name="message"
|
||||||
@ -204,7 +204,7 @@ const FaqVideoSection = () => {
|
|||||||
<p className="consultation-text">Book Your Personalized Consultation with Our Experts Today.</p>
|
<p className="consultation-text">Book Your Personalized Consultation with Our Experts Today.</p>
|
||||||
<a
|
<a
|
||||||
href="https://calendly.com/metatroncubeswsolutions/request-consultation?month=2025-05"
|
href="https://calendly.com/metatroncubeswsolutions/request-consultation?month=2025-05"
|
||||||
className="primary-btn-1 mt-4"
|
className="primary-btn-1 mt-4 mb-25"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener noreferrer"
|
rel="noopener noreferrer"
|
||||||
>
|
>
|
||||||
|
|||||||
@ -4,15 +4,20 @@ import React from 'react';
|
|||||||
interface PageHeaderProps {
|
interface PageHeaderProps {
|
||||||
title: string;
|
title: string;
|
||||||
breadcrumbItems?: { name: string; href?: string }[];
|
breadcrumbItems?: { name: string; href?: string }[];
|
||||||
|
bannerLeftImage?: string;
|
||||||
|
bannerRightImage?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
const PageHeader: React.FC<PageHeaderProps> = ({ title, breadcrumbItems }) => {
|
const PageHeader: React.FC<PageHeaderProps> = ({ title, breadcrumbItems, bannerLeftImage, bannerRightImage }) => {
|
||||||
|
const defaultRightImage = "https://bracketweb.com/pelocishtml/assets/images/backgrounds/page-header-img-1.png";
|
||||||
|
const defaultLeftImage = "https://bracketweb.com/pelocishtml/assets/images/shapes/bannar-shape-2.png";
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<section className="page-header">
|
<section className="page-header">
|
||||||
<div className="page-header__bg">
|
<div className="page-header__bg">
|
||||||
<div
|
<div
|
||||||
className="page-header__bg__img"
|
className="page-header__bg__img"
|
||||||
style={{ backgroundImage: 'url(https://bracketweb.com/pelocishtml/assets/images/backgrounds/page-header-img-1.png)' }}
|
style={{ backgroundImage: `url(${bannerRightImage || defaultRightImage})` }}
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<div className="page-header__bg__shape-1">
|
<div className="page-header__bg__shape-1">
|
||||||
@ -38,7 +43,7 @@ const PageHeader: React.FC<PageHeaderProps> = ({ title, breadcrumbItems }) => {
|
|||||||
</div>
|
</div>
|
||||||
<img
|
<img
|
||||||
className="page-header__shape"
|
className="page-header__shape"
|
||||||
src="https://bracketweb.com/pelocishtml/assets/images/shapes/bannar-shape-2.png"
|
src={bannerLeftImage || defaultLeftImage}
|
||||||
alt="bannar-shape"
|
alt="bannar-shape"
|
||||||
/>
|
/>
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
@ -15,14 +15,14 @@ const services = [
|
|||||||
title: "Mobile Application Development",
|
title: "Mobile Application Development",
|
||||||
text: "High-performance mobile apps for iOS and Android.",
|
text: "High-performance mobile apps for iOS and Android.",
|
||||||
icon: "/assets/imgs/icon/icon-2.png",
|
icon: "/assets/imgs/icon/icon-2.png",
|
||||||
link: "/services-digital-solutions/mobile-app-development",
|
link: "/services-digital-solutions/mobile-application-development",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 2,
|
id: 2,
|
||||||
title: "Graphic Designing",
|
title: "Graphic Designing",
|
||||||
text: "Creative graphic design solutions for your brand.",
|
text: "Creative graphic design solutions for your brand.",
|
||||||
icon: "/assets/imgs/icon/icon-3.png",
|
icon: "/assets/imgs/icon/icon-3.png",
|
||||||
link: "/services-digital-solutions/graphic-designing",
|
link: "/services-digital-solutions/graphic-designing-company",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 3,
|
id: 3,
|
||||||
@ -36,14 +36,14 @@ const services = [
|
|||||||
title: "SEO & Content Writing",
|
title: "SEO & Content Writing",
|
||||||
text: "Optimization and content that drives organic growth.",
|
text: "Optimization and content that drives organic growth.",
|
||||||
icon: "/assets/imgs/icon/icon-5.png",
|
icon: "/assets/imgs/icon/icon-5.png",
|
||||||
link: "/services-digital-solutions/seo-content-writing",
|
link: "/services-digital-solutions/search-engine-optimization-seo-content-writing",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 5,
|
id: 5,
|
||||||
title: "Digital Marketing",
|
title: "Digital Marketing",
|
||||||
text: "Strategic digital marketing to grow your online presence.",
|
text: "Strategic digital marketing to grow your online presence.",
|
||||||
icon: "/assets/imgs/icon/icon-6.png",
|
icon: "/assets/imgs/icon/icon-6.png",
|
||||||
link: "/services-digital-solutions/digital-marketing",
|
link: "/services-digital-solutions/digital-marketing-agency-in-canada",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,7 @@ const projectsData = [
|
|||||||
description: "5 Feb, 2025 | Full Time",
|
description: "5 Feb, 2025 | Full Time",
|
||||||
image: "/assets/images/careers/web-dev.webp",
|
image: "/assets/images/careers/web-dev.webp",
|
||||||
category: "web",
|
category: "web",
|
||||||
link: "/service/website-development-company"
|
link: "/services-digital-solutions/web-development"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 2,
|
id: 2,
|
||||||
@ -18,7 +18,7 @@ const projectsData = [
|
|||||||
description: "5 Feb, 2025 | Full Time",
|
description: "5 Feb, 2025 | Full Time",
|
||||||
image: "/assets/images/careers/seo.webp",
|
image: "/assets/images/careers/seo.webp",
|
||||||
category: "seo",
|
category: "seo",
|
||||||
link: "/service/search-engine-optimization-seo-content-writing"
|
link: "/services-digital-solutions/search-engine-optimization-seo-content-writing"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 3,
|
id: 3,
|
||||||
@ -26,7 +26,7 @@ const projectsData = [
|
|||||||
description: "5 Feb, 2025 | Full Time",
|
description: "5 Feb, 2025 | Full Time",
|
||||||
image: "/assets/images/careers/digi-marketing.webp",
|
image: "/assets/images/careers/digi-marketing.webp",
|
||||||
category: "dm",
|
category: "dm",
|
||||||
link: "/service/digital-marketing-agency-in-canada"
|
link: "/services-digital-solutions/digital-marketing-agency-in-canada"
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@ -4,9 +4,9 @@ const AboutSection = () => {
|
|||||||
return (
|
return (
|
||||||
<section className="about-us-section section-space p-relative">
|
<section className="about-us-section section-space p-relative">
|
||||||
<div className="shape-area">
|
<div className="shape-area">
|
||||||
<div className="shape-1" style={{ backgroundImage: "url(/assets/imgs/bg/bg-shape-1.png)" }}></div>
|
{/* <div className="shape-1" style={{ backgroundImage: "url(/assets/imgs/bg/bg-shape-1.png)" }}></div> */}
|
||||||
<div className="shape-2 quote-animation" style={{ backgroundImage: "url(/assets/imgs/shapes/shape-7.png)" }}></div>
|
{/* <div className="shape-2 quote-animation" style={{ backgroundImage: "url(/assets/imgs/shapes/shape-7.png)" }}></div> */}
|
||||||
<div className="shape-3 quote-animation" style={{ backgroundImage: "url(/assets/imgs/shapes/shape-8.png)" }}></div>
|
{/* <div className="shape-3 quote-animation" style={{ backgroundImage: "url(/assets/imgs/shapes/shape-8.png)" }}></div> */}
|
||||||
</div>
|
</div>
|
||||||
<div className="small-container">
|
<div className="small-container">
|
||||||
<div className="row g-4">
|
<div className="row g-4">
|
||||||
|
|||||||
@ -16,7 +16,7 @@ const ServiceThreeSlider = () => {
|
|||||||
|
|
||||||
<div className="small-container">
|
<div className="small-container">
|
||||||
<div className="row align-items-end">
|
<div className="row align-items-end">
|
||||||
<div className="col-xxl-10 col-xl-6">
|
<div className="col-xxl-10 col-xl-12">
|
||||||
<div className="sec-title-wrapper wow fadeInLeft" data-wow-delay=".5s">
|
<div className="sec-title-wrapper wow fadeInLeft" data-wow-delay=".5s">
|
||||||
<div className="sec-title sec-title--light">
|
<div className="sec-title sec-title--light">
|
||||||
<div className="sec-title__shape"></div>
|
<div className="sec-title__shape"></div>
|
||||||
@ -27,14 +27,14 @@ const ServiceThreeSlider = () => {
|
|||||||
<img src="https://bracketweb.com/pelocishtml/assets/images/shapes/text-shape-2.png" alt="" className="sec-title__text-shape" />
|
<img src="https://bracketweb.com/pelocishtml/assets/images/shapes/text-shape-2.png" alt="" className="sec-title__text-shape" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="col-xxl-2 col-xl-6">
|
{/* <div className="col-xxl-2 col-xl-6">
|
||||||
<div className="service_1_navigation__wrapprer position-relative z-1 text-end mt-30">
|
<div className="service_1_navigation__wrapprer position-relative z-1 text-end mt-30">
|
||||||
<div className="common-slider-navigation">
|
<div className="common-slider-navigation">
|
||||||
<button className="service-1-button-prev slider-nav-btn"><i className="fa-solid fa-chevron-left"></i></button>
|
<button className="service-1-button-prev slider-nav-btn"><i className="fa-solid fa-chevron-left"></i></button>
|
||||||
<button className="service-1-button-next slider-nav-btn"><i className="fa-solid fa-chevron-right"></i></button>
|
<button className="service-1-button-next slider-nav-btn"><i className="fa-solid fa-chevron-right"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> */}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="swiper service-active-1">
|
<div className="swiper service-active-1">
|
||||||
|
|||||||
@ -64,14 +64,14 @@ const Header1 = () => {
|
|||||||
<div className="header-shopping-cart my-auto">
|
<div className="header-shopping-cart my-auto">
|
||||||
<div className="cart-icon"><a href="#"><i className="fa-solid fa-cart-shopping"></i></a></div>
|
<div className="cart-icon"><a href="#"><i className="fa-solid fa-cart-shopping"></i></a></div>
|
||||||
</div> */}
|
</div> */}
|
||||||
<div className="header-action d-none d-xl-inline-flex gap-5">
|
{/* <div className="header-action d-none d-xl-inline-flex gap-5">
|
||||||
<div className="header-link">
|
<div className="header-link">
|
||||||
<Link className="primary-btn-1 btn-hover" href="/contact">
|
<Link className="primary-btn-1 btn-hover" href="/contact">
|
||||||
GET A QUOTE | <i className="fa-solid fa-arrow-right"></i>
|
GET A QUOTE | <i className="fa-solid fa-arrow-right"></i>
|
||||||
<span className="btn-hover-span"></span>
|
<span className="btn-hover-span"></span>
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> */}
|
||||||
<div className="header-action">
|
<div className="header-action">
|
||||||
<div className="header-link-1">
|
<div className="header-link-1">
|
||||||
<div className="icon"><i className="fa-solid fa-phone-volume"></i></div>
|
<div className="icon"><i className="fa-solid fa-phone-volume"></i></div>
|
||||||
@ -82,7 +82,7 @@ const Header1 = () => {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
className="header__hamburger d-xl-none my-auto"
|
className="header__hamburger d-lg-none my-auto"
|
||||||
onClick={openOffcanvas}
|
onClick={openOffcanvas}
|
||||||
>
|
>
|
||||||
<div className="sidebar__toggle">
|
<div className="sidebar__toggle">
|
||||||
|
|||||||
@ -8,11 +8,11 @@ const NavMenu = () => (
|
|||||||
<Link href="/services-digital-solutions">SERVICE <i className="fa-solid fa-angle-down ms-1"></i></Link>
|
<Link href="/services-digital-solutions">SERVICE <i className="fa-solid fa-angle-down ms-1"></i></Link>
|
||||||
<ul className="submenu">
|
<ul className="submenu">
|
||||||
<li><Link href="/services-digital-solutions/web-development">WEBSITE DEVELOPMENT</Link></li>
|
<li><Link href="/services-digital-solutions/web-development">WEBSITE DEVELOPMENT</Link></li>
|
||||||
<li><Link href="/services-digital-solutions/mobile-app-development">MOBILE APPLICATION DEVELOPMENT</Link></li>
|
<li><Link href="/services-digital-solutions/mobile-application-development">MOBILE APPLICATION DEVELOPMENT</Link></li>
|
||||||
<li><Link href="/services-digital-solutions/graphic-designing">GRAPHIC DESIGNING</Link></li>
|
<li><Link href="/services-digital-solutions/graphic-designing-company">GRAPHIC DESIGNING</Link></li>
|
||||||
<li><Link href="/services-digital-solutions/ui-ux-designing">UI / UX DESIGNING</Link></li>
|
<li><Link href="/services-digital-solutions/ui-ux-designing">UI / UX DESIGNING</Link></li>
|
||||||
<li><Link href="/services-digital-solutions/seo-content-writing">SEO & CONTENT WRITING</Link></li>
|
<li><Link href="/services-digital-solutions/search-engine-optimization-seo-content-writing">SEO & CONTENT WRITING</Link></li>
|
||||||
<li><Link href="/services-digital-solutions/digital-marketing">DIGITAL MARKETING</Link></li>
|
<li><Link href="/services-digital-solutions/digital-marketing-agency-in-canada">DIGITAL MARKETING</Link></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><Link href="/portfolio">PORTFOLIO</Link></li>
|
<li><Link href="/portfolio">PORTFOLIO</Link></li>
|
||||||
|
|||||||
@ -1,15 +1,22 @@
|
|||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import React, { useEffect } from "react";
|
import React, { useEffect, useState } from "react";
|
||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import { ServiceType } from "@/types";
|
import { ServiceType } from "@/types";
|
||||||
import { ourServices } from "@/utils/data";
|
import { ourServices } from "@/utils/data";
|
||||||
|
import "@/components/web-development-service/style.css";
|
||||||
|
|
||||||
interface ServiceDetailsProps {
|
interface ServiceDetailsProps {
|
||||||
service: ServiceType;
|
service: ServiceType;
|
||||||
}
|
}
|
||||||
|
|
||||||
const ServiceDetails: React.FC<ServiceDetailsProps> = ({ service }) => {
|
const ServiceDetails: React.FC<ServiceDetailsProps> = ({ service }) => {
|
||||||
|
const [activeIndex, setActiveIndex] = useState<number | null>(0);
|
||||||
|
|
||||||
|
const toggleAccordion = (index: number) => {
|
||||||
|
setActiveIndex(activeIndex === index ? null : index);
|
||||||
|
};
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const init = () => {
|
const init = () => {
|
||||||
if (typeof window !== "undefined" && (window as any).initMetatron && (window as any).jQuery) {
|
if (typeof window !== "undefined" && (window as any).initMetatron && (window as any).jQuery) {
|
||||||
@ -25,12 +32,12 @@ const ServiceDetails: React.FC<ServiceDetailsProps> = ({ service }) => {
|
|||||||
<section className="service-details section-space">
|
<section className="service-details section-space">
|
||||||
<div className="container">
|
<div className="container">
|
||||||
<div className="row gutter-y-30">
|
<div className="row gutter-y-30">
|
||||||
<div className="col-md-12 col-lg-4">
|
<div className="col-md-12 col-lg-4">
|
||||||
<div className="service-sidebar">
|
<div className="service-sidebar">
|
||||||
<div className="service-sidebar__single">
|
<div className="service-sidebar__single">
|
||||||
<h3 className="service-sidebar__title">All Services</h3>
|
<h3 className="service-sidebar__title">All Services</h3>
|
||||||
<ul className="list-unstyled service-sidebar__nav">
|
<ul className="list-unstyled service-sidebar__nav">
|
||||||
{ourServices.map((item) => (
|
{ourServices.slice(0, 6).map((item) => (
|
||||||
<li key={item.id} className={item.slug === service.slug ? "active" : ""}>
|
<li key={item.id} className={item.slug === service.slug ? "active" : ""}>
|
||||||
<Link href={`/services-digital-solutions/${item.slug}`}>
|
<Link href={`/services-digital-solutions/${item.slug}`}>
|
||||||
{item.title}
|
{item.title}
|
||||||
@ -65,8 +72,6 @@ const ServiceDetails: React.FC<ServiceDetailsProps> = ({ service }) => {
|
|||||||
<div className="service-details__thumbnail">
|
<div className="service-details__thumbnail">
|
||||||
<img src={service.image} alt={service.title} />
|
<img src={service.image} alt={service.title} />
|
||||||
</div>
|
</div>
|
||||||
<h3 className="service-details__title">{service.title}</h3>
|
|
||||||
<p className="service-details__text">{service.description}</p>
|
|
||||||
|
|
||||||
{service.content && (
|
{service.content && (
|
||||||
<div
|
<div
|
||||||
@ -74,10 +79,41 @@ const ServiceDetails: React.FC<ServiceDetailsProps> = ({ service }) => {
|
|||||||
dangerouslySetInnerHTML={{ __html: service.content }}
|
dangerouslySetInnerHTML={{ __html: service.content }}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
|
{service.faq && service.faq.length > 0 && (
|
||||||
|
<div className="service-details__faq-wrapper mt-40">
|
||||||
|
<div className="sec-title mb-40">
|
||||||
|
<div className="sec-title__shape"></div>
|
||||||
|
<h6 className="sec-title__tagline">Service FAQ</h6>
|
||||||
|
<h3 className="sec-title__title" style={{ fontSize: '34px' }}>Frequently Asked Questions</h3>
|
||||||
|
</div>
|
||||||
|
<div className="faq-one__accordion pelocis-accrodion">
|
||||||
|
{service.faq.map((item, index) => (
|
||||||
|
<div key={index} className={`accrodion ${activeIndex === index ? 'active' : ''}`}>
|
||||||
|
<div className="accrodion-title" onClick={() => toggleAccordion(index)}>
|
||||||
|
<div className="accrodion-title__shape"></div>
|
||||||
|
<div className="accrodion-title__icon">
|
||||||
|
<i className="fa fa-check"></i>
|
||||||
|
</div>
|
||||||
|
<h4 style={{ fontSize: '24px' }}>
|
||||||
|
{item.question}
|
||||||
|
<i className="icon-right-arrow-white"></i>
|
||||||
|
</h4>
|
||||||
|
</div>
|
||||||
|
<div className="accrodion-content" style={{ display: activeIndex === index ? 'block' : 'none' }}>
|
||||||
|
<div className="inner">
|
||||||
|
<p style={{ fontSize: '18px', color: '#444', lineHeight: '1.8' }} dangerouslySetInnerHTML={{ __html: item.answer }} />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -55,7 +55,7 @@ const AccordionItem = ({
|
|||||||
onToggle,
|
onToggle,
|
||||||
align,
|
align,
|
||||||
}: {
|
}: {
|
||||||
faq: { q: string; a: string };
|
faq: { question: string; answer: string };
|
||||||
isOpen: boolean;
|
isOpen: boolean;
|
||||||
onToggle: () => void;
|
onToggle: () => void;
|
||||||
align: "left" | "right";
|
align: "left" | "right";
|
||||||
@ -64,7 +64,7 @@ const AccordionItem = ({
|
|||||||
className={`faqv2-item${isOpen ? " faqv2-item-open" : ""} faqv2-item-${align}`}
|
className={`faqv2-item${isOpen ? " faqv2-item-open" : ""} faqv2-item-${align}`}
|
||||||
>
|
>
|
||||||
<button className="faqv2-question" onClick={onToggle} aria-expanded={isOpen}>
|
<button className="faqv2-question" onClick={onToggle} aria-expanded={isOpen}>
|
||||||
<span className="faqv2-q-text">{faq.q}</span>
|
<span className="faqv2-q-text">{faq.question}</span>
|
||||||
<span className={`faqv2-icon${isOpen ? " faqv2-icon-open" : ""}`}>
|
<span className={`faqv2-icon${isOpen ? " faqv2-icon-open" : ""}`}>
|
||||||
<i className="fa-solid fa-chevron-down"></i>
|
<i className="fa-solid fa-chevron-down"></i>
|
||||||
</span>
|
</span>
|
||||||
@ -76,18 +76,26 @@ const AccordionItem = ({
|
|||||||
padding: "0 20px 18px 20px",
|
padding: "0 20px 18px 20px",
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<p>{faq.a}</p>
|
<p>{faq.answer}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
||||||
const FAQ = () => {
|
const FAQ = ({ faqData }: { faqData?: { question: string; answer: string }[] }) => {
|
||||||
const [openId, setOpenId] = useState<string | null>("left-0");
|
const [openId, setOpenId] = useState<string | null>("left-0");
|
||||||
|
|
||||||
const toggleFaq = (id: string) => {
|
const toggleFaq = (id: string) => {
|
||||||
setOpenId(prev => prev === id ? null : id);
|
setOpenId(prev => prev === id ? null : id);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// If no faqData provided, use empty arrays
|
||||||
|
const faqs = faqData || [];
|
||||||
|
const half = Math.ceil(faqs.length / 2);
|
||||||
|
const leftFAQs = faqs.slice(0, half);
|
||||||
|
const rightFAQs = faqs.slice(half);
|
||||||
|
|
||||||
|
if (faqs.length === 0) return null;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<section className="ztc-faq-section sp1" id="faq">
|
<section className="ztc-faq-section sp1" id="faq">
|
||||||
{/* Section Header */}
|
{/* Section Header */}
|
||||||
@ -105,12 +113,6 @@ const FAQ = () => {
|
|||||||
<GsapReveal y={20} delay={0.2}>
|
<GsapReveal y={20} delay={0.2}>
|
||||||
<h2 className="text-anime-style-3 faqv2-title">Frequently Asked Questions</h2>
|
<h2 className="text-anime-style-3 faqv2-title">Frequently Asked Questions</h2>
|
||||||
</GsapReveal>
|
</GsapReveal>
|
||||||
{/* <div className="space16"></div>
|
|
||||||
<GsapReveal y={20} delay={0.3}>
|
|
||||||
<p className="faqv2-desc" style={{ color: '#343a40' }}>
|
|
||||||
Everything you need to know about our IT services. Can't find the answer you're looking for? <Link href="/pages/contact" style={{ color: '#3779b9', fontWeight: 600 }}>Talk to our team.</Link>
|
|
||||||
</p>
|
|
||||||
</GsapReveal> */}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -120,7 +122,7 @@ const FAQ = () => {
|
|||||||
<div className="container faqv2-grid" style={{ paddingTop: '20px' }}>
|
<div className="container faqv2-grid" style={{ paddingTop: '20px' }}>
|
||||||
<div className="row align-items-start" style={{ rowGap: '32px' }}>
|
<div className="row align-items-start" style={{ rowGap: '32px' }}>
|
||||||
|
|
||||||
{/* ===== LEFT: 5 FAQs ===== */}
|
{/* ===== LEFT: FAQs ===== */}
|
||||||
<div className="col-lg-4 col-md-12 faqv2-col-left">
|
<div className="col-lg-4 col-md-12 faqv2-col-left">
|
||||||
<div className="faqv2-accordion">
|
<div className="faqv2-accordion">
|
||||||
{leftFAQs.map((faq, idx) => (
|
{leftFAQs.map((faq, idx) => (
|
||||||
@ -146,6 +148,7 @@ const FAQ = () => {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{/* ===== RIGHT: FAQs ===== */}
|
||||||
<div className="col-lg-4 col-md-12 faqv2-col-right">
|
<div className="col-lg-4 col-md-12 faqv2-col-right">
|
||||||
<div className="faqv2-accordion">
|
<div className="faqv2-accordion">
|
||||||
{rightFAQs.map((faq, idx) => (
|
{rightFAQs.map((faq, idx) => (
|
||||||
|
|||||||
@ -187,35 +187,82 @@ h2,
|
|||||||
.heading2 h2,
|
.heading2 h2,
|
||||||
.heading1 h2,
|
.heading1 h2,
|
||||||
.consen-section-title h2,
|
.consen-section-title h2,
|
||||||
.vl-section-title {
|
.vl-section-title,
|
||||||
font-size: var(--section-heading-size) !important;
|
.service-details__content-title,
|
||||||
|
/* Refined Service Details Spacing (Blog Match) */
|
||||||
|
.service-details__title {
|
||||||
|
font-size: 34px;
|
||||||
|
font-weight: 800;
|
||||||
|
color: #0f172a;
|
||||||
|
line-height: 1.2;
|
||||||
|
margin-bottom: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
h3,
|
.service-details__dynamic-content {
|
||||||
h4,
|
font-size: 18px;
|
||||||
.case-study-title h3 {
|
line-height: 1.8;
|
||||||
font-size: var(--subheading-size) !important;
|
color: #475569;
|
||||||
}
|
}
|
||||||
|
|
||||||
h5,
|
/* .service-details__dynamic-content p {
|
||||||
h6,
|
margin-top: 20px;
|
||||||
.heading2 h5,
|
margin-bottom: 20px;
|
||||||
.heading1 h5,
|
} */
|
||||||
.consen-section-title h5,
|
|
||||||
.case-study-title h6 {
|
.service-details__dynamic-content h3,
|
||||||
font-size: var(--small-text-size) !important;
|
.service-details__dynamic-content h4 {
|
||||||
|
font-size: 24px;
|
||||||
|
font-weight: 700;
|
||||||
|
color: #1e293b;
|
||||||
|
margin-top: 25px;
|
||||||
|
margin-bottom: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
p,
|
.service-details__dynamic-content ul,
|
||||||
.consen-section-title p {
|
.service-details__dynamic-content ol {
|
||||||
font-size: var(--body-size) !important;
|
margin-top: 15px;
|
||||||
|
margin-bottom: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.vl-btn1,
|
/* Custom Service Details List */
|
||||||
.vl-btn2,
|
.service-details__benefit__list_custom {
|
||||||
.kf-demo-btn {
|
list-style: none;
|
||||||
font-size: var(--btn-font-size) !important;
|
padding: 0;
|
||||||
padding: var(--btn-padding) !important;
|
margin: 15px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-details__benefit__list_custom li {
|
||||||
|
display: flex !important;
|
||||||
|
align-items: flex-start !important;
|
||||||
|
gap: 12px;
|
||||||
|
margin-bottom: 12px !important;
|
||||||
|
line-height: 1.8;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #475569;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-details__benefit__list_custom li i {
|
||||||
|
color: #3779b9;
|
||||||
|
font-size: 18px;
|
||||||
|
margin-top: 5px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-details__benefit__list_custom li .list-content {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-details__benefit__list_custom li b {
|
||||||
|
color: #1a1f2b;
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: 17px !important;
|
||||||
|
display: inline;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-details__benefit__list_custom li p {
|
||||||
|
margin: 0 !important;
|
||||||
|
display: inline;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Small text utility */
|
/* Small text utility */
|
||||||
@ -223,6 +270,204 @@ p,
|
|||||||
font-size: var(--small-text-size) !important;
|
font-size: var(--small-text-size) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Portfolio Cards Section (Pelocis Style) */
|
||||||
|
.service-details__portfolio-cards {
|
||||||
|
display: flex;
|
||||||
|
gap: 30px;
|
||||||
|
margin-top: 40px;
|
||||||
|
margin-bottom: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 991px) {
|
||||||
|
.service-details__portfolio-cards {
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 767px) {
|
||||||
|
.service-details__portfolio-cards {
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 30px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card {
|
||||||
|
flex: 1;
|
||||||
|
min-width: 300px;
|
||||||
|
padding: 10px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
border: 1px solid #DDDDDD;
|
||||||
|
position: relative;
|
||||||
|
transition: all 500ms ease-in-out;
|
||||||
|
text-align: center;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 10px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__inner {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
padding: 40px 30px;
|
||||||
|
transition: 0.5s ease-in-out;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__hover {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
position: absolute;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
top: 0px;
|
||||||
|
left: 0px;
|
||||||
|
opacity: 0;
|
||||||
|
visibility: hidden;
|
||||||
|
border: 1px solid #e2a475;
|
||||||
|
background-position: center center;
|
||||||
|
transition: opacity 0.5s ease-in-out;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__hover::after {
|
||||||
|
background-color: rgba(255, 255, 255, 0.9);
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
left: 0px;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
content: "";
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card:hover .service-card__hover {
|
||||||
|
opacity: 1;
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__shape {
|
||||||
|
width: 218px;
|
||||||
|
height: 80px;
|
||||||
|
background-color: #e2a475;
|
||||||
|
clip-path: polygon(36% 100%, 65% 100%, 100% 0px, 0px 0px);
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
left: 50%;
|
||||||
|
transform: translateX(-50%) scaleY(0.6);
|
||||||
|
opacity: 0;
|
||||||
|
visibility: hidden;
|
||||||
|
z-index: 1;
|
||||||
|
transition: 500ms ease-in-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card:hover .service-card__shape {
|
||||||
|
opacity: 1;
|
||||||
|
visibility: visible;
|
||||||
|
transform: translateX(-50%) scaleY(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__icon {
|
||||||
|
width: 76px;
|
||||||
|
height: 76px;
|
||||||
|
margin: 0 auto;
|
||||||
|
margin-bottom: 18px;
|
||||||
|
background-color: #3779b9;
|
||||||
|
color: #fff;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 32px;
|
||||||
|
border-radius: 10px;
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
z-index: 1;
|
||||||
|
transition: all 500ms ease-in-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__icon::before {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
right: -22px;
|
||||||
|
top: -22px;
|
||||||
|
width: 50%;
|
||||||
|
height: 50%;
|
||||||
|
background-color: #222222;
|
||||||
|
transform: rotate(41deg);
|
||||||
|
transition: all 500ms ease-in-out;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__icon::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
left: -22px;
|
||||||
|
bottom: -22px;
|
||||||
|
width: 50%;
|
||||||
|
height: 50%;
|
||||||
|
background-color: #222222;
|
||||||
|
transform: rotate(41deg);
|
||||||
|
transition: all 500ms ease-in-out;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card:hover .service-card__icon {
|
||||||
|
background-color: #222222;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card:hover .service-card__icon::before,
|
||||||
|
.service-one .service-card:hover .service-card__icon::after {
|
||||||
|
background-color: #3779b9;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__title {
|
||||||
|
font-size: 18px !important;
|
||||||
|
font-weight: 700;
|
||||||
|
line-height: 26px;
|
||||||
|
color: #0f172a;
|
||||||
|
margin-bottom: 10px !important;
|
||||||
|
margin-top: 0 !important;
|
||||||
|
z-index: 1;
|
||||||
|
position: relative;
|
||||||
|
transition: all 500ms ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__text {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 26px;
|
||||||
|
color: #475569;
|
||||||
|
margin-bottom: 12px !important;
|
||||||
|
z-index: 1;
|
||||||
|
position: relative;
|
||||||
|
transition: all 500ms ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__link {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 700;
|
||||||
|
color: #3779b9;
|
||||||
|
text-decoration: none;
|
||||||
|
text-transform: uppercase;
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 8px;
|
||||||
|
transition: all 500ms ease;
|
||||||
|
z-index: 1;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.service-one .service-card__link:hover {
|
||||||
|
color: #0f172a;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Typography Refinements */
|
||||||
|
.service-details b {
|
||||||
|
font-size: 17px !important;
|
||||||
|
}
|
||||||
|
|
||||||
body,
|
body,
|
||||||
html {
|
html {
|
||||||
overflow-x: hidden !important;
|
overflow-x: hidden !important;
|
||||||
|
|||||||
@ -2,10 +2,13 @@ export interface ServiceType {
|
|||||||
id: number;
|
id: number;
|
||||||
icon: string;
|
icon: string;
|
||||||
image?: string;
|
image?: string;
|
||||||
|
bannerLeftImage?: string;
|
||||||
|
bannerRightImage?: string;
|
||||||
title: string;
|
title: string;
|
||||||
description: string;
|
description: string;
|
||||||
slug?: string;
|
slug?: string;
|
||||||
content?: string;
|
content?: string;
|
||||||
|
faq?: { question: string; answer: string }[];
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface CaseStudyType {
|
export interface CaseStudyType {
|
||||||
@ -28,6 +31,8 @@ export interface TestimonialType {
|
|||||||
export interface BlogType {
|
export interface BlogType {
|
||||||
id: number;
|
id: number;
|
||||||
image: string;
|
image: string;
|
||||||
|
bannerLeftImage?: string;
|
||||||
|
bannerRightImage?: string;
|
||||||
date: string;
|
date: string;
|
||||||
title: string;
|
title: string;
|
||||||
slug: string;
|
slug: string;
|
||||||
|
|||||||