Merge branch 'landing-page-consmatic-changes-migration' into migrate_main

This commit is contained in:
Vikas Nale 2025-11-11 17:34:50 +05:30
commit 8900ed6fc4
90 changed files with 3293 additions and 8202 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 273 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

BIN
public/img/hero/bg-01.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 KiB

BIN
public/img/hero/bg-012.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 614 KiB

BIN
public/img/hero/bg-02.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 364 KiB

BIN
public/img/hero/bg-03.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

BIN
public/img/hero/bg-1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

BIN
public/img/hero/bg-2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

BIN
public/img/hero/bg-3.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

View File

Before

Width:  |  Height:  |  Size: 860 KiB

After

Width:  |  Height:  |  Size: 860 KiB

BIN
public/img/icons/ai.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
public/img/icons/report.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

After

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 860 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 426 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 395 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 267 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 252 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

View File

@ -1,42 +0,0 @@
<svg width="25" viewBox="0 0 25 42" version="1.1" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<path
d="M13.7918663,0.358365126 L3.39788168,7.44174259 C0.566865006,9.69408886 -0.379795268,12.4788597 0.557900856,15.7960551 C0.68998853,16.2305145 1.09562888,17.7872135 3.12357076,19.2293357 C3.8146334,19.7207684 5.32369333,20.3834223 7.65075054,21.2172976 L7.59773219,21.2525164 L2.63468769,24.5493413 C0.445452254,26.3002124 0.0884951797,28.5083815 1.56381646,31.1738486 C2.83770406,32.8170431 5.20850219,33.2640127 7.09180128,32.5391577 C8.347334,32.0559211 11.4559176,30.0011079 16.4175519,26.3747182 C18.0338572,24.4997857 18.6973423,22.4544883 18.4080071,20.2388261 C17.963753,17.5346866 16.1776345,15.5799961 13.0496516,14.3747546 L10.9194936,13.4715819 L18.6192054,7.984237 L13.7918663,0.358365126 Z"
id="path-1"></path>
<path
d="M5.47320593,6.00457225 C4.05321814,8.216144 4.36334763,10.0722806 6.40359441,11.5729822 C8.61520715,12.571656 10.0999176,13.2171421 10.8577257,13.5094407 L15.5088241,14.433041 L18.6192054,7.984237 C15.5364148,3.11535317 13.9273018,0.573395879 13.7918663,0.358365126 C13.5790555,0.511491653 10.8061687,2.3935607 5.47320593,6.00457225 Z"
id="path-3"></path>
<path
d="M7.50063644,21.2294429 L12.3234468,23.3159332 C14.1688022,24.7579751 14.397098,26.4880487 13.008334,28.506154 C11.6195701,30.5242593 10.3099883,31.790241 9.07958868,32.3040991 C5.78142938,33.4346997 4.13234973,34 4.13234973,34 C4.13234973,34 2.75489982,33.0538207 2.37032616e-14,31.1614621 C-0.55822714,27.8186216 -0.55822714,26.0572515 -4.05231404e-15,25.8773518 C0.83734071,25.6075023 2.77988457,22.8248993 3.3049379,22.52991 C3.65497346,22.3332504 5.05353963,21.8997614 7.50063644,21.2294429 Z"
id="path-4"></path>
<path
d="M20.6,7.13333333 L25.6,13.8 C26.2627417,14.6836556 26.0836556,15.9372583 25.2,16.6 C24.8538077,16.8596443 24.4327404,17 24,17 L14,17 C12.8954305,17 12,16.1045695 12,15 C12,14.5672596 12.1403557,14.1461923 12.4,13.8 L17.4,7.13333333 C18.0627417,6.24967773 19.3163444,6.07059163 20.2,6.73333333 C20.3516113,6.84704183 20.4862915,6.981722 20.6,7.13333333 Z"
id="path-5"></path>
</defs>
<g id="g-app-brand" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Brand-Logo" transform="translate(-27.000000, -15.000000)">
<g id="Icon" transform="translate(27.000000, 15.000000)">
<g id="Mask" transform="translate(0.000000, 8.000000)">
<mask id="mask-2" fill="white">
<use xlink:href="#path-1"></use>
</mask>
<use fill="#696cff" xlink:href="#path-1"></use>
<g id="Path-3" mask="url(#mask-2)">
<use fill="#696cff" xlink:href="#path-3"></use>
<use fill-opacity="0.2" fill="#FFFFFF" xlink:href="#path-3"></use>
</g>
<g id="Path-4" mask="url(#mask-2)">
<use fill="#696cff" xlink:href="#path-4"></use>
<use fill-opacity="0.2" fill="#FFFFFF" xlink:href="#path-4"></use>
</g>
</g>
<g id="Triangle"
transform="translate(19.000000, 11.000000) rotate(-300.000000) translate(-19.000000, -11.000000) ">
<use fill="#696cff" xlink:href="#path-5"></use>
<use fill-opacity="0.2" fill="#FFFFFF" xlink:href="#path-5"></use>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

View File

@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="35.93" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 228"><path fill="#00D8FF" d="M210.483 73.824a171.49 171.49 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621c6.238-30.281 2.16-54.676-11.769-62.708c-13.355-7.7-35.196.329-57.254 19.526a171.23 171.23 0 0 0-6.375 5.848a155.866 155.866 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233C50.33 10.957 46.379 33.89 51.995 62.588a170.974 170.974 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a145.52 145.52 0 0 0 6.921 2.165a167.467 167.467 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266c13.744 7.926 36.812-.22 59.273-19.855a145.567 145.567 0 0 0 5.342-4.923a168.064 168.064 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586c13.731-7.949 18.194-32.003 12.4-61.268a145.016 145.016 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488c29.348-9.723 48.443-25.443 48.443-41.52c0-15.417-17.868-30.326-45.517-39.844Zm-6.365 70.984c-1.4.463-2.836.91-4.3 1.345c-3.24-10.257-7.612-21.163-12.963-32.432c5.106-11 9.31-21.767 12.459-31.957c2.619.758 5.16 1.557 7.61 2.4c23.69 8.156 38.14 20.213 38.14 29.504c0 9.896-15.606 22.743-40.946 31.14Zm-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787c-1.524 8.219-4.59 13.698-8.382 15.893c-8.067 4.67-25.32-1.4-43.927-17.412a156.726 156.726 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246c12.376-1.098 24.068-2.894 34.671-5.345a134.17 134.17 0 0 1 1.386 6.193ZM87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675c-8.075-4.657-11.432-22.636-6.853-46.752a156.923 156.923 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994c7.084 9.967 14.501 19.128 21.976 27.15a134.668 134.668 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94ZM50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863c-6.35-5.437-9.555-10.836-9.555-15.216c0-9.322 13.897-21.212 37.076-29.293c2.813-.98 5.757-1.905 8.812-2.773c3.204 10.42 7.406 21.315 12.477 32.332c-5.137 11.18-9.399 22.249-12.634 32.792a134.718 134.718 0 0 1-6.318-1.979Zm12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789c8.564-4.958 27.502 2.111 47.463 19.835a144.318 144.318 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988c-12.04 1.116-23.565 2.908-34.161 5.309a160.342 160.342 0 0 1-1.76-7.887Zm110.427 27.268a347.8 347.8 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08c-2.206 7.072-4.956 14.465-8.193 22.045a381.151 381.151 0 0 0-7.365-13.322Zm-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322.04 322.04 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18ZM82.802 87.83a323.167 323.167 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152c7.304-1.634 15.093-2.97 23.209-3.984a321.524 321.524 0 0 0-7.848 12.897Zm8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793c2.26-7.3 5.045-14.885 8.298-22.6a321.187 321.187 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147Zm37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433c4.902.192 9.899.29 14.978.29c5.218 0 10.376-.117 15.453-.343c-4.985 6.774-10.018 12.97-15.028 18.486Zm52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52c-7.422 1.694-15.436 3.058-23.88 4.071a382.417 382.417 0 0 0 7.859-13.026a347.403 347.403 0 0 0 7.425-13.565Zm-16.898 8.101a358.557 358.557 0 0 1-12.281 19.815a329.4 329.4 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310.202 310.202 0 0 1-12.513-19.846h.001a307.41 307.41 0 0 1-10.923-20.627a310.278 310.278 0 0 1 10.89-20.637l-.001.001a307.318 307.318 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329.357 329.357 0 0 1 12.335 19.695a358.489 358.489 0 0 1 11.036 20.54a329.472 329.472 0 0 1-11 20.722Zm22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026c-.344 1.668-.73 3.367-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408c-7.034-10.017-14.323-19.124-21.64-27.008a160.789 160.789 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3ZM128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86s-22.86-10.235-22.86-22.86s10.235-22.86 22.86-22.86Z"></path></svg>

Before

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -0,0 +1,12 @@
const OfwLabel = () => {
return (
<>
<a className="mx-1 text-green" href="/">
<span className="text-blue">OnField</span>
<span>Work</span>
<span className="text-dark">.com</span>
</a>
</>
);
};
export default OfwLabel;

View File

@ -0,0 +1,24 @@
const FeatureCard = ({ imagesrc, title, description }) => {
return (
<>
<div className="col-md-3 px-4">
<div className="row g-4">
<div className="card-slider p-4 bg-light rounded-4 h-100 text-start border">
<div className="feature-icon mb-3 d-flex align-items-center justify-content-middle">
<img
src={imagesrc}
alt={title}
className="w-14 mb-4 feature-icon-image"
/>
<span class="ms-5">
<h5>{title}</h5>
</span>
</div>
<p>{description}</p>
</div>
</div>
</div>
</>
);
};
export default FeatureCard;

View File

@ -1,668 +1,269 @@
.section-py { /* Custom Styles */
padding: 6.25rem 0; .custom-navbar {
background: #efefef;
transition: all 0.3s ease;
padding: 1rem 0;
} }
.section-py .heading { .carousel-item {
font-size: 1.625rem; height: 100vh;
} min-height: 500px;
@media (max-width: 1199.98px) { background-size: cover;
.section-py { background-position: center;
padding: 4rem 0; position: relative;
}
}
@media (max-width: 767.98px) {
.section-py {
padding: 3rem 0;
}
} }
.first-section-pt { .carousel-caption {
padding-top: 11.28rem; bottom: 20%;
}
@media (max-width: 1199.98px) {
.first-section-pt {
padding-top: 7.5rem;
}
} }
.card[class*="card-hover-border-"] { .hero-overlay {
transition: all 0.2s ease-in-out;
}
.banner-bg-img {
position: absolute; position: absolute;
top: 0; inset: 0;
left: 0; background: rgba(0, 0, 0, 0.4);
height: 100%;
width: 100%;
object-fit: cover;
object-position: left;
} }
.section-title-img { .feature-icon {
height: 100%; font-size: 40px;
width: 120%; color: #4fc143;
inset-inline-start: -12%;
top: 10px;
} }
/* .light-style body { /* .text-primary {
background-color: #fff; color: #49bf3c !important;
} */ } */
.dark-style body { /* .btn-primary {
background-color: #2b2c40; background-color: #49bf3c !important;
} */
body {
font-family: "Segoe UI", Roboto, sans-serif;
background-color: #ffff;
} }
nav.layout-navbar { .hero {
/* backdrop-filter: unset; */ background: linear-gradient(135deg, #4fc143, #007bff);
/* background-color: transparent !important; */ color: white;
/* background-color: rgba(214, 36, 33, 0.88) !important; */ padding: 100px 0;
} }
nav.layout-navbar::before { .pricing-card {
position: absolute; transition: transform 0.2s, box-shadow 0.2s;
display: block;
block-size: 100%;
content: "";
inline-size: 100%;
inset-block-start: 0;
inset-inline-start: 0;
} }
nav.layout-navbar .navbar.landing-navbar { .pricing-card:hover {
--bs-front-navbar-bg: rgba(var(--bs-paper-bg-rgb), 0.38); transform: translateY(-5px);
--bs-front-navbar-border-color: rgba(var(--bs-paper-bg-rgb), 0.68); box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
border: 2px solid var(--bs-front-navbar-border-color);
background-color: var(--bs-front-navbar-bg);
margin-block-start: 0rem;
padding-block: 0.614rem;
transform: unset;
transition: all 0.2s ease-in-out;
border-radius: 0.375rem;
} }
nav.layout-navbar.navbar-active::after { .feature-icon-image {
backdrop-filter: saturate(100%) blur(6px); width: 50px;
-webkit-backdrop-filter: saturate(100%) blur(6px);
} }
.navbar.landing-navbar { .accordion {
box-shadow: none; --bs-accordion-box-shadow: 0 0.125rem 0.375rem 0 rgba(34, 48, 62, 0.08);
transition: all 0.2s ease-in-out; --bs-accordion-active-box-shadow: 0 0.1875rem 0.5rem 0 rgba(34, 48, 62, 0.1);
transform: unset !important; --bs-accordion-active-bg: #fff;
padding-top: 0.614rem; --bs-accordion-btn-active-bg: #fff;
padding-bottom: 0.614rem; --bs-accordion-btn-focus-box-shadow: none;
margin-top: 1rem; --bs-accordion-btn-focus-shadow-width: 0;
border-width: 2px; --bs-accordion-color: #646e78;
border-style: solid; --bs-accordion-bg: #fff;
border-radius: 0.375rem; --bs-accordion-transition: all 0.2s ease-in-out, border-radius 0.15s ease;
} --bs-accordion-border-color: #fff;
.navbar.landing-navbar .navbar-nav .nav-link { --bs-accordion-border-width: 1px;
padding: 0.5rem 0.625rem; --bs-accordion-border-radius: 0.375rem;
margin-inline-end: 0.625rem; --bs-accordion-inner-border-radius: 0.375rem;
} --bs-accordion-btn-padding-x: 1.4375rem;
@media (max-width: 1199.98px) { --bs-accordion-btn-padding-y: 0.7305rem;
.navbar.landing-navbar .navbar-nav .nav-link { --bs-accordion-btn-color: #384551;
padding-left: 0.5rem; --bs-accordion-btn-bg: #fff;
padding-right: 0.5rem; --bs-accordion-btn-icon: url(
margin-inline-end: 0; data:image/svg + xml,
} %3csvgwidth="20"height="20"viewBox="0 0 20 20"fill="none"xmlns="http://www.w3.org/2000/svg"%3e%3cgid="bx-chevron-down"%3e%3cpathid="Vector"d="M13.5775 7.74417L9.99997 11.3217L6.42247 7.74417L5.24414 8.9225L9.99997 13.6783L14.7558 8.9225L13.5775 7.74417Z"fill="%23384551"fill-opacity="0.9"/%3e%3c/g%3e%3c/svg%3e
} );
.navbar.landing-navbar .navbar-nav .nav-item:last-child .nav-link { --bs-accordion-btn-icon-width: 1.25rem;
margin-inline-end: 0; --bs-accordion-btn-icon-transform: rotate(-180deg);
} --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
@media (min-width: 992px) { --bs-accordion-btn-active-icon: url(
.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown > .dropdown-menu { data:image/svg + xml,
max-width: 1300px; %3csvgwidth="20"height="20"viewBox="0 0 20 20"fill="none"xmlns="http://www.w3.org/2000/svg"%3e%3cgid="bx-chevron-down"%3e%3cpathid="Vector"d="M13.5775 7.74417L9.99997 11.3217L6.42247 7.74417L5.24414 8.9225L9.99997 13.6783L14.7558 8.9225L13.5775 7.74417Z"fill="%23384551"fill-opacity="0.9"/%3e%3c/g%3e%3c/svg%3e
inset-inline-start: 50% !important; );
transform: translateX(-50%); --bs-accordion-btn-focus-box-shadow: none;
top: 100%; --bs-accordion-body-padding-x: 1.1875rem;
} --bs-accordion-body-padding-y: 1.1875rem;
} --bs-accordion-active-color: #384551;
@media (max-width: 991.98px) { --bs-accordion-active-bg: #fff;
.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown > .dropdown-menu {
background: transparent;
box-shadow: none;
border: none;
}
}
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link {
padding-left: 0;
padding-right: 0;
margin: 0;
font-weight: 400;
}
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link
i {
font-size: 1rem;
font-weight: 700;
margin-top: -0.125rem;
}
.navbar.landing-navbar .navbar-nav .nav-item .nav-img-col,
.navbar.landing-navbar .navbar-nav .nav-item .nav-img-col img {
border-radius: 0.625rem;
}
@media (max-width: 991.98px) {
.navbar.landing-navbar .landing-menu-overlay {
position: fixed;
display: none;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(34, 48, 62, 0.78);
transition: all 0.2s ease-in-out;
z-index: 9998;
}
.navbar.landing-navbar .landing-nav-menu {
position: fixed;
display: block !important;
height: 100%;
max-width: 300px;
width: 80%;
padding: 1rem;
inset-inline-start: -100%;
top: 0;
overflow-y: auto;
transition: all 0.3s ease-in-out;
z-index: 9999;
}
.navbar.landing-navbar .landing-nav-menu.show {
inset-inline-start: 0;
}
.navbar.landing-navbar .landing-nav-menu.show ~ .landing-menu-overlay {
display: block;
}
} }
.light-style .layout-navbar .navbar.landing-navbar { .accordion-header {
border-color: rgba(255, 255, 255, 100); line-height: 1.375;
background: rgba(255, 255, 255, 50); margin-bottom: 0;
position: relative;
border-bottom: none;
} }
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link {
color: #384551; .accordion-item {
}
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.show
> .nav-link,
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.active
> .nav-link,
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.show,
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.nav-link.active {
color: #696cff !important;
}
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link
i {
color: #646e78; color: #646e78;
}
@media (max-width: 991.98px) {
.light-style .layout-navbar .navbar.landing-navbar .landing-nav-menu {
background-color: #fff; background-color: #fff;
} border: 1px solid #fff;
}
.light-style .layout-navbar.navbar-active .navbar.landing-navbar {
background: #fff;
box-shadow: 0 0.125rem 0.375rem 0 rgba(34, 48, 62, 0.08);
}
.light-style .layout-navbar .menu-text {
color: #384551;
} }
.dark-style .layout-navbar .navbar.landing-navbar { .accordion-item:first-of-type {
border-color: rgba(65, 65, 95, 0.68); border-top-left-radius: 0.375rem;
background-color: rgba(65, 65, 95, 0.38); border-top-right-radius: 0.375rem;
}
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link {
color: #d5d5e2;
}
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .show > .nav-link,
.dark-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.active
> .nav-link,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.show,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.active {
color: #696cff !important;
}
.dark-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link
i {
color: #b2b2c4;
}
@media (max-width: 991.98px) {
.dark-style .layout-navbar .navbar.landing-navbar .landing-nav-menu {
background-color: #2b2c40;
}
}
.dark-style .layout-navbar .navbar .menu-text {
color: #d5d5e2;
}
.dark-style .layout-navbar.navbar-active .navbar.landing-navbar {
background: #2b2c40;
border-color: #2b2c40;
box-shadow: 0 0.125rem 0.375rem 0 rgba(20, 20, 29, 0.2);
} }
@media (min-width: 992px) { .accordion:not(.accordion-custom-button):not(.accordion-arrow-left)
[dir="rtl"] .accordion-item:not(:last-of-type) {
.navbar.landing-navbar margin-block-end: 0.5rem;
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu {
transform: translateX(50%);
}
} }
.landing-footer .footer-link, .accordion-button {
.landing-footer .footer-text { position: relative;
color: #fff; display: flex;
opacity: 0.78; align-items: center;
width: 100%;
padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
font-size: 1rem;
font-weight: 400;
color: var(--bs-accordion-btn-color);
text-align: left;
background-color: var(--bs-accordion-btn-bg);
border: 0;
border-radius: 0;
overflow-anchor: none;
transition: var(--bs-accordion-transition);
} }
.landing-footer .footer-title {
color: #fff; .accordion-button:not(.collapsed) {
opacity: 0.92; color: var(--bs-accordion-active-color);
} background-color: var(--bs-accordion-active-bg);
.landing-footer .footer-bottom-text { box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0
color: #d3d4dc; var(--bs-accordion-border-color);
}
.landing-footer .footer-bottom {
background-color: #f44336;
}
.landing-footer .footer-link {
transition: all 0.2s ease-in-out;
}
.landing-footer .footer-link:hover {
opacity: 1;
}
.landing-footer .footer-top {
padding-top: 1.3rem;
padding-bottom: 1.3rem;
border-top-left-radius: 1.75rem;
border-top-right-radius: 1.75rem;
background-color: #f44336;
}
@media (max-width: 767.98px) {
.landing-footer .footer-top {
padding: 3rem 0;
}
}
.landing-footer .footer-top .footer-bg {
object-position: center;
}
@media (min-width: 992px) {
.landing-footer .footer-logo-description {
max-width: 385px;
}
}
.landing-footer .footer-form {
max-width: 22.25rem;
}
.landing-footer .footer-form input {
background-color: transparent;
border-color: #4e4f6c;
color: #fff;
}
.landing-footer .footer-form input:hover:not([disabled]):not([focus]) {
border-color: #4e4f6c;
}
.landing-footer .footer-form input::placeholder {
color: rgba(255, 255, 255, 0.5);
}
.landing-footer .footer-form label {
color: #d5d5e2;
} }
.section-py { .section-py {
padding: 6.25rem 0; padding: 6.25rem 0;
} min-height: 100vh !important;
@media (max-width: 1199.98px) {
.section-py {
padding: 5rem 0;
}
}
@media (max-width: 767.98px) {
.section-py {
padding: 3rem 0;
}
} }
.landing-hero { .btn-primary {
border-radius: 0 0 3.5rem 3.5rem; --bs-btn-color: #fff;
padding-top: 8.2rem; --bs-btn-bg: #4fc143;
--bs-btn-border-color: #4fc143;
--bs-btn-hover-color: #fff;
--bs-btn-hover-bg: #0b5ed7;
--bs-btn-hover-border-color: #0a58ca;
--bs-btn-focus-shadow-rgb: 49, 132, 253;
--bs-btn-active-color: #fff;
--bs-btn-active-bg: #0a58ca;
--bs-btn-active-border-color: #0a53be;
--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
--bs-btn-disabled-color: #fff;
--bs-btn-disabled-bg: #4fc143;
--bs-btn-disabled-border-color: #4fc143;
} }
.landing-hero::after {
content: ""; /* https://codingyaar.com/bootstrap-card-hover-effect-3-background-color-change/# */
position: absolute; .card-slider {
top: 0; border: 0;
left: 0; border-radius: 0;
width: 100%; /* color: #fff; */
height: 100%; box-shadow: 5px 5px 10px #e1e1e1;
z-index: -1; padding: 3em 0;
} /* border-bottom-right-radius: 4em;
@media (min-width: 992px) { border-top-left-radius: 4em; */
.landing-hero .hero-text-box {
/* max-width: 34.375rem; */
max-width: 70%;
margin: 0 auto;
}
}
.landing-hero .hero-title {
background: linear-gradient( background: linear-gradient(
to right, to left,
#28c76f 0%, rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) 50%,
#5a4aff 47.92%, #4fc143 50%
#ff3739 100%
); );
background-size: 200% auto; background-size: 200%;
color: #384551; background-position: right;
font-size: calc(1.3875rem + 1.65vw); transition: background-position 0.5s ease-out;
background-clip: text;
line-height: 1.2;
text-fill-color: transparent;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
animation: shine 2s ease-in-out infinite alternate;
} }
@media (min-width: 1200px) {
.landing-hero .hero-title { .card-slider:hover {
font-size: 2.625rem; background-position: left;
} transform: translateY(-5px);
} }
.landing-hero .landing-hero-btn .hero-btn-item {
inset-inline-start: -94%; .scroll-top.active {
top: 65%; visibility: visible;
opacity: 1;
} }
.landing-hero .hero-animation-img {
margin-bottom: -32rem; .scroll-top {
position: fixed;
visibility: hidden;
opacity: 0;
right: 15px;
bottom: 15px;
z-index: 99999;
background-color: #4fc143;
width: 40px;
height: 40px;
border-radius: 25px;
transition: all 0.4s;
border: 2px solid color-mix(in srgb, #0a53be, transparent 10%);
} }
.animation-img {
border: 1px soid red; .contact-section {
background: #fff;
border-radius: 20px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
padding: 40px 40px;
margin: 60px auto;
max-width: 1100px;
} }
@media (max-width: 1199.98px) {
.landing-hero .hero-animation-img { .contact-img img {
margin-bottom: -20rem;
}
}
@media (max-width: 575.98px) {
.landing-hero .hero-animation-img {
margin-bottom: -10rem;
}
}
.landing-hero .hero-animation-img .hero-dashboard-img {
width: 80%;
margin: 0 auto;
will-change: transform;
transform-style: preserve-3d;
transition: all 0.1s;
}
.landing-hero .hero-animation-img .hero-dashboard-img img {
width: 100%; width: 100%;
border-radius: 15px;
} }
.landing-hero-blank { .contact-text h2 {
padding-top: 26rem; font-size: 2.5rem;
} font-weight: 700;
@media (max-width: 1199.98px) { color: #173b5f;
.landing-hero-blank {
padding-top: 15rem;
}
}
@media (max-width: 575.98px) {
.landing-hero-blank {
padding-top: 7rem;
}
} }
@keyframes shine { .contact-text p {
0% { font-size: 1rem;
background-position: 0% 50%; color: #6c757d;
} margin-top: 15px;
80% { margin-bottom: 25px;
background-position: 50% 90%;
}
100% {
background-position: 91% 100%;
}
}
.landing-features
.features-icon-wrapper
.features-icon-box
.features-icon-description {
max-width: 19.25rem;
margin: 0 auto;
} }
.landing-reviews { .btn-green {
border-top-left-radius: 3.75rem; background-color: #49bf3c;
border-top-right-radius: 3.75rem; color: #fff;
}
.landing-reviews .swiper-reviews-carousel .swiper-button-prev,
.landing-reviews .swiper-reviews-carousel .swiper-button-next {
display: none;
}
.landing-reviews .swiper-reviews-carousel .swiper-slide {
height: auto;
padding: 0.8125rem;
}
.landing-reviews .swiper-reviews-carousel .client-logo {
height: 1.375rem;
object-fit: contain;
}
.landing-reviews .swiper-logo-carousel {
padding-bottom: 6.25rem;
}
.landing-reviews .swiper-logo-carousel .swiper {
max-width: 45rem;
}
.landing-reviews .swiper-logo-carousel .swiper .swiper-slide {
display: flex;
justify-content: center;
}
.landing-reviews .swiper-logo-carousel .swiper .client-logo {
max-height: 2.5rem;
max-width: 95%;
object-fit: contain;
}
.landing-team .card, border-radius: 50px;
.landing-team .card .team-image-box { padding: 10px 30px;
border-top-left-radius: 5.625rem; font-weight: 500;
border-top-right-radius: 1.25rem; text-decoration: none;
transition: all 0.3s ease;
} }
.landing-team .card .card-body { .btn-green:hover {
border-bottom-left-radius: 0.375rem; background-color: #2d8822;
border-bottom-right-radius: 0.375rem; color: #fff;
} }
.landing-team .team-image-box { .btn-ovel-small {
height: 11.5625rem; padding-bottom: 5.072px;
padding-inline-end: 12px;
padding-inline-start: 12px;
padding-left: 12px;
padding-right: 12px;
padding-top: 5.072px;
} }
.landing-team .team-image-box .card-img-position { .btn-square-small {
height: 15rem; border-radius: 3px;
transform: translateX(-50%); padding-bottom: 5.072px;
max-width: 100%; padding-inline-end: 12px;
object-fit: cover; padding-inline-start: 12px;
} padding-left: 12px;
@media (max-width: 991.98px) { padding-right: 12px;
.landing-team .team-image-box .card-img-position { padding-top: 5.072px;
height: 13rem;
}
}
@media (max-width: 575.98px) {
.landing-team .team-image-box {
height: 11rem;
}
}
.landing-team .card .team-media-icons i {
transition: all 0.2s ease-in-out;
}
.landing-pricing {
border-radius: 3.75rem;
}
.landing-pricing .pricing-plans-item {
inset-inline-end: -56%;
bottom: -0.5rem;
}
@media (max-width: 767.98px) {
.landing-pricing .pricing-plans-item {
inset-inline-end: 0;
bottom: 1rem;
}
}
.landing-pricing .pricing-list .badge.badge-center {
width: 1rem;
height: 1rem;
}
.landing-pricing .pricing-list .badge.badge-center i {
margin-top: -5px;
}
.landing-pricing .price-yearly-toggle {
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
}
.landing-pricing .card .card-header,
.landing-pricing .card .card-body {
padding: 2rem;
padding-top: 3rem;
}
.landing-faq {
border-top-left-radius: 3.75rem;
border-top-right-radius: 3.75rem;
}
.landing-faq .faq-image {
max-width: 20rem;
width: 80%;
}
.landing-cta .cta-title {
font-size: 2.125rem;
}
@media (max-width: 767.98px) {
.landing-cta .cta-title {
font-size: 1.8rem;
}
}
.landing-contact .text-heading {
overflow-wrap: anywhere;
}
.landing-contact .contact-img-box,
.landing-contact .contact-img-box .contact-img {
border-radius: 3.75rem 0.375rem 0.375rem 0.375rem;
}
.landing-contact .contact-img-box .contact-border-img {
inset-block-start: -2.5rem;
inset-inline-start: -2.8125rem;
}
.light-style .landing-hero {
background: linear-gradient(138.18deg, #eae8fd 0%, #fce5e6 94.44%);
}
.light-style .landing-hero::after {
background-color: #fff;
}
.dark-style .landing-hero {
background: #1e2130;
}
.dark-style .landing-hero::after {
background-color: #2b2c40;
}
[dir="rtl"] .landing-reviews-btns {
display: flex;
justify-content: flex-end;
flex-direction: row-reverse;
gap: 1rem;
}
[dir="rtl"] .landing-team .team-image-box .card-img-position {
transform: translateX(50%) !important;
}
[dir="rtl"] .landing-pricing .switch .switch-label {
padding-right: 0;
}
[dir="rtl"] .landing-pricing .switch .switch-label:first-child {
padding-left: 0.5rem;
}
[dir="rtl"] .landing-pricing .switch .switch-input ~ .switch-label {
padding-right: 3rem;
}
[dir="rtl"] .landing-contact .contact-img-box {
border-radius: 0.375rem 3.75rem 0.375rem 0.375rem;
}
[dir="rtl"] .landing-contact .contact-img-box::before {
inset-block-start: -1.875rem;
inset-inline-start: -3.125rem;
transform: rotate(90deg);
}
.swiper {
width: 100%;
height: 100%;
border-radius: 10px;
}
.swiper-slide {
text-align: center;
font-size: 18px;
/* Center slide text vertically */
display: flex;
justify-content: center;
align-items: center;
}
.swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.light-style .landing-hero {
background: linear-gradient(138.18deg, #eae8fd, #ede7e7 94.44%);
}
.text-green {
color: #49bf3c !important;
}
.text-blue {
color: var(--bs-blue);
} }

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,668 @@
.section-py {
padding: 6.25rem 0;
}
.section-py .heading {
font-size: 1.625rem;
}
@media (max-width: 1199.98px) {
.section-py {
padding: 4rem 0;
}
}
@media (max-width: 767.98px) {
.section-py {
padding: 3rem 0;
}
}
.first-section-pt {
padding-top: 11.28rem;
}
@media (max-width: 1199.98px) {
.first-section-pt {
padding-top: 7.5rem;
}
}
.card[class*="card-hover-border-"] {
transition: all 0.2s ease-in-out;
}
.banner-bg-img {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
object-fit: cover;
object-position: left;
}
.section-title-img {
height: 100%;
width: 120%;
inset-inline-start: -12%;
top: 10px;
}
/* .light-style body {
background-color: #fff;
} */
.dark-style body {
background-color: #2b2c40;
}
nav.layout-navbar {
/* backdrop-filter: unset; */
/* background-color: transparent !important; */
/* background-color: rgba(214, 36, 33, 0.88) !important; */
}
nav.layout-navbar::before {
position: absolute;
display: block;
block-size: 100%;
content: "";
inline-size: 100%;
inset-block-start: 0;
inset-inline-start: 0;
}
nav.layout-navbar .navbar.landing-navbar {
--bs-front-navbar-bg: rgba(var(--bs-paper-bg-rgb), 0.38);
--bs-front-navbar-border-color: rgba(var(--bs-paper-bg-rgb), 0.68);
border: 2px solid var(--bs-front-navbar-border-color);
background-color: var(--bs-front-navbar-bg);
margin-block-start: 0rem;
padding-block: 0.614rem;
transform: unset;
transition: all 0.2s ease-in-out;
border-radius: 0.375rem;
}
nav.layout-navbar.navbar-active::after {
backdrop-filter: saturate(100%) blur(6px);
-webkit-backdrop-filter: saturate(100%) blur(6px);
}
.navbar.landing-navbar {
box-shadow: none;
transition: all 0.2s ease-in-out;
transform: unset !important;
padding-top: 0.614rem;
padding-bottom: 0.614rem;
margin-top: 1rem;
border-width: 2px;
border-style: solid;
border-radius: 0.375rem;
}
.navbar.landing-navbar .navbar-nav .nav-link {
padding: 0.5rem 0.625rem;
margin-inline-end: 0.625rem;
}
@media (max-width: 1199.98px) {
.navbar.landing-navbar .navbar-nav .nav-link {
padding-left: 0.5rem;
padding-right: 0.5rem;
margin-inline-end: 0;
}
}
.navbar.landing-navbar .navbar-nav .nav-item:last-child .nav-link {
margin-inline-end: 0;
}
@media (min-width: 992px) {
.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown > .dropdown-menu {
max-width: 1300px;
inset-inline-start: 50% !important;
transform: translateX(-50%);
top: 100%;
}
}
@media (max-width: 991.98px) {
.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown > .dropdown-menu {
background: transparent;
box-shadow: none;
border: none;
}
}
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link {
padding-left: 0;
padding-right: 0;
margin: 0;
font-weight: 400;
}
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link
i {
font-size: 1rem;
font-weight: 700;
margin-top: -0.125rem;
}
.navbar.landing-navbar .navbar-nav .nav-item .nav-img-col,
.navbar.landing-navbar .navbar-nav .nav-item .nav-img-col img {
border-radius: 0.625rem;
}
@media (max-width: 991.98px) {
.navbar.landing-navbar .landing-menu-overlay {
position: fixed;
display: none;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(34, 48, 62, 0.78);
transition: all 0.2s ease-in-out;
z-index: 9998;
}
.navbar.landing-navbar .landing-nav-menu {
position: fixed;
display: block !important;
height: 100%;
max-width: 300px;
width: 80%;
padding: 1rem;
inset-inline-start: -100%;
top: 0;
overflow-y: auto;
transition: all 0.3s ease-in-out;
z-index: 9999;
}
.navbar.landing-navbar .landing-nav-menu.show {
inset-inline-start: 0;
}
.navbar.landing-navbar .landing-nav-menu.show ~ .landing-menu-overlay {
display: block;
}
}
.light-style .layout-navbar .navbar.landing-navbar {
border-color: rgba(255, 255, 255, 100);
background: rgba(255, 255, 255, 50);
}
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link {
color: #384551;
}
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.show
> .nav-link,
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.active
> .nav-link,
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.show,
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.nav-link.active {
color: #696cff !important;
}
.light-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link
i {
color: #646e78;
}
@media (max-width: 991.98px) {
.light-style .layout-navbar .navbar.landing-navbar .landing-nav-menu {
background-color: #fff;
}
}
.light-style .layout-navbar.navbar-active .navbar.landing-navbar {
background: #fff;
box-shadow: 0 0.125rem 0.375rem 0 rgba(34, 48, 62, 0.08);
}
.light-style .layout-navbar .menu-text {
color: #384551;
}
.dark-style .layout-navbar .navbar.landing-navbar {
border-color: rgba(65, 65, 95, 0.68);
background-color: rgba(65, 65, 95, 0.38);
}
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link {
color: #d5d5e2;
}
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .show > .nav-link,
.dark-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.active
> .nav-link,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.show,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.active {
color: #696cff !important;
}
.dark-style
.layout-navbar
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu
.mega-dropdown-link
i {
color: #b2b2c4;
}
@media (max-width: 991.98px) {
.dark-style .layout-navbar .navbar.landing-navbar .landing-nav-menu {
background-color: #2b2c40;
}
}
.dark-style .layout-navbar .navbar .menu-text {
color: #d5d5e2;
}
.dark-style .layout-navbar.navbar-active .navbar.landing-navbar {
background: #2b2c40;
border-color: #2b2c40;
box-shadow: 0 0.125rem 0.375rem 0 rgba(20, 20, 29, 0.2);
}
@media (min-width: 992px) {
[dir="rtl"]
.navbar.landing-navbar
.navbar-nav
.nav-item.mega-dropdown
> .dropdown-menu {
transform: translateX(50%);
}
}
.landing-footer .footer-link,
.landing-footer .footer-text {
color: #fff;
opacity: 0.78;
}
.landing-footer .footer-title {
color: #fff;
opacity: 0.92;
}
.landing-footer .footer-bottom-text {
color: #d3d4dc;
}
.landing-footer .footer-bottom {
background-color: #f44336;
}
.landing-footer .footer-link {
transition: all 0.2s ease-in-out;
}
.landing-footer .footer-link:hover {
opacity: 1;
}
.landing-footer .footer-top {
padding-top: 1.3rem;
padding-bottom: 1.3rem;
border-top-left-radius: 1.75rem;
border-top-right-radius: 1.75rem;
background-color: #f44336;
}
@media (max-width: 767.98px) {
.landing-footer .footer-top {
padding: 3rem 0;
}
}
.landing-footer .footer-top .footer-bg {
object-position: center;
}
@media (min-width: 992px) {
.landing-footer .footer-logo-description {
max-width: 385px;
}
}
.landing-footer .footer-form {
max-width: 22.25rem;
}
.landing-footer .footer-form input {
background-color: transparent;
border-color: #4e4f6c;
color: #fff;
}
.landing-footer .footer-form input:hover:not([disabled]):not([focus]) {
border-color: #4e4f6c;
}
.landing-footer .footer-form input::placeholder {
color: rgba(255, 255, 255, 0.5);
}
.landing-footer .footer-form label {
color: #d5d5e2;
}
.section-py {
padding: 6.25rem 0;
}
@media (max-width: 1199.98px) {
.section-py {
padding: 5rem 0;
}
}
@media (max-width: 767.98px) {
.section-py {
padding: 3rem 0;
}
}
.landing-hero {
border-radius: 0 0 3.5rem 3.5rem;
padding-top: 8.2rem;
}
.landing-hero::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
}
@media (min-width: 992px) {
.landing-hero .hero-text-box {
/* max-width: 34.375rem; */
max-width: 70%;
margin: 0 auto;
}
}
.landing-hero .hero-title {
background: linear-gradient(
to right,
#28c76f 0%,
#5a4aff 47.92%,
#ff3739 100%
);
background-size: 200% auto;
color: #384551;
font-size: calc(1.3875rem + 1.65vw);
background-clip: text;
line-height: 1.2;
text-fill-color: transparent;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
animation: shine 2s ease-in-out infinite alternate;
}
@media (min-width: 1200px) {
.landing-hero .hero-title {
font-size: 2.625rem;
}
}
.landing-hero .landing-hero-btn .hero-btn-item {
inset-inline-start: -94%;
top: 65%;
}
.landing-hero .hero-animation-img {
margin-bottom: -32rem;
}
.animation-img {
border: 1px soid red;
}
@media (max-width: 1199.98px) {
.landing-hero .hero-animation-img {
margin-bottom: -20rem;
}
}
@media (max-width: 575.98px) {
.landing-hero .hero-animation-img {
margin-bottom: -10rem;
}
}
.landing-hero .hero-animation-img .hero-dashboard-img {
width: 80%;
margin: 0 auto;
will-change: transform;
transform-style: preserve-3d;
transition: all 0.1s;
}
.landing-hero .hero-animation-img .hero-dashboard-img img {
width: 100%;
}
.landing-hero-blank {
padding-top: 26rem;
}
@media (max-width: 1199.98px) {
.landing-hero-blank {
padding-top: 15rem;
}
}
@media (max-width: 575.98px) {
.landing-hero-blank {
padding-top: 7rem;
}
}
@keyframes shine {
0% {
background-position: 0% 50%;
}
80% {
background-position: 50% 90%;
}
100% {
background-position: 91% 100%;
}
}
.landing-features
.features-icon-wrapper
.features-icon-box
.features-icon-description {
max-width: 19.25rem;
margin: 0 auto;
}
.landing-reviews {
border-top-left-radius: 3.75rem;
border-top-right-radius: 3.75rem;
}
.landing-reviews .swiper-reviews-carousel .swiper-button-prev,
.landing-reviews .swiper-reviews-carousel .swiper-button-next {
display: none;
}
.landing-reviews .swiper-reviews-carousel .swiper-slide {
height: auto;
padding: 0.8125rem;
}
.landing-reviews .swiper-reviews-carousel .client-logo {
height: 1.375rem;
object-fit: contain;
}
.landing-reviews .swiper-logo-carousel {
padding-bottom: 6.25rem;
}
.landing-reviews .swiper-logo-carousel .swiper {
max-width: 45rem;
}
.landing-reviews .swiper-logo-carousel .swiper .swiper-slide {
display: flex;
justify-content: center;
}
.landing-reviews .swiper-logo-carousel .swiper .client-logo {
max-height: 2.5rem;
max-width: 95%;
object-fit: contain;
}
.landing-team .card,
.landing-team .card .team-image-box {
border-top-left-radius: 5.625rem;
border-top-right-radius: 1.25rem;
}
.landing-team .card .card-body {
border-bottom-left-radius: 0.375rem;
border-bottom-right-radius: 0.375rem;
}
.landing-team .team-image-box {
height: 11.5625rem;
}
.landing-team .team-image-box .card-img-position {
height: 15rem;
transform: translateX(-50%);
max-width: 100%;
object-fit: cover;
}
@media (max-width: 991.98px) {
.landing-team .team-image-box .card-img-position {
height: 13rem;
}
}
@media (max-width: 575.98px) {
.landing-team .team-image-box {
height: 11rem;
}
}
.landing-team .card .team-media-icons i {
transition: all 0.2s ease-in-out;
}
.landing-pricing {
border-radius: 3.75rem;
}
.landing-pricing .pricing-plans-item {
inset-inline-end: -56%;
bottom: -0.5rem;
}
@media (max-width: 767.98px) {
.landing-pricing .pricing-plans-item {
inset-inline-end: 0;
bottom: 1rem;
}
}
.landing-pricing .pricing-list .badge.badge-center {
width: 1rem;
height: 1rem;
}
.landing-pricing .pricing-list .badge.badge-center i {
margin-top: -5px;
}
.landing-pricing .price-yearly-toggle {
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
}
.landing-pricing .card .card-header,
.landing-pricing .card .card-body {
padding: 2rem;
padding-top: 3rem;
}
.landing-faq {
border-top-left-radius: 3.75rem;
border-top-right-radius: 3.75rem;
}
.landing-faq .faq-image {
max-width: 20rem;
width: 80%;
}
.landing-cta .cta-title {
font-size: 2.125rem;
}
@media (max-width: 767.98px) {
.landing-cta .cta-title {
font-size: 1.8rem;
}
}
.landing-contact .text-heading {
overflow-wrap: anywhere;
}
.landing-contact .contact-img-box,
.landing-contact .contact-img-box .contact-img {
border-radius: 3.75rem 0.375rem 0.375rem 0.375rem;
}
.landing-contact .contact-img-box .contact-border-img {
inset-block-start: -2.5rem;
inset-inline-start: -2.8125rem;
}
.light-style .landing-hero {
background: linear-gradient(138.18deg, #eae8fd 0%, #fce5e6 94.44%);
}
.light-style .landing-hero::after {
background-color: #fff;
}
.dark-style .landing-hero {
background: #1e2130;
}
.dark-style .landing-hero::after {
background-color: #2b2c40;
}
[dir="rtl"] .landing-reviews-btns {
display: flex;
justify-content: flex-end;
flex-direction: row-reverse;
gap: 1rem;
}
[dir="rtl"] .landing-team .team-image-box .card-img-position {
transform: translateX(50%) !important;
}
[dir="rtl"] .landing-pricing .switch .switch-label {
padding-right: 0;
}
[dir="rtl"] .landing-pricing .switch .switch-label:first-child {
padding-left: 0.5rem;
}
[dir="rtl"] .landing-pricing .switch .switch-input ~ .switch-label {
padding-right: 3rem;
}
[dir="rtl"] .landing-contact .contact-img-box {
border-radius: 0.375rem 3.75rem 0.375rem 0.375rem;
}
[dir="rtl"] .landing-contact .contact-img-box::before {
inset-block-start: -1.875rem;
inset-inline-start: -3.125rem;
transform: rotate(90deg);
}
.swiper {
width: 100%;
height: 100%;
border-radius: 10px;
}
.swiper-slide {
text-align: center;
font-size: 18px;
/* Center slide text vertically */
display: flex;
justify-content: center;
align-items: center;
}
.swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.light-style .landing-hero {
background: linear-gradient(138.18deg, #eae8fd, #ede7e7 94.44%);
}
.text-green {
color: #49bf3c !important;
}
.text-blue {
color: var(--bs-blue);
}

File diff suppressed because it is too large Load Diff

View File

@ -10,8 +10,6 @@ const SubscriptionPlans = () => {
const { data, isLoading, isError, error } = useSubscription(frequency); const { data, isLoading, isError, error } = useSubscription(frequency);
const [loading, setLoading] = useState(false); const [loading, setLoading] = useState(false);
const frequencyLabel = (freq) => { const frequencyLabel = (freq) => {
switch (freq) { switch (freq) {
case 0: case 0:
@ -104,13 +102,13 @@ const SubscriptionPlans = () => {
<h6 className="fw-bold text-uppercase border-top pt-3 mb-3 text-center"> <h6 className="fw-bold text-uppercase border-top pt-3 mb-3 text-center">
Features Features
</h6> </h6>
<ul className="list-unstyled text-start mb-4 ms-7 fs-5"> <ul className="list-unstyled text-start mb-4 ms-7 fs-6">
{plan.features?.modules && {plan.features?.modules &&
Object.values(plan.features.modules).map((mod) => Object.values(plan.features.modules).map((mod) =>
mod && mod.name ? ( mod && mod.name ? (
<li <li
key={mod.id} key={mod.id}
className="d-flex align-items-center mb-4" className="d-flex align-items-center mb-2"
> >
{mod.enabled ? ( {mod.enabled ? (
<i className="fa-regular fa-circle-check text-success me-2"></i> <i className="fa-regular fa-circle-check text-success me-2"></i>
@ -127,17 +125,17 @@ const SubscriptionPlans = () => {
<div className="mt-auto"> <div className="mt-auto">
<Link <Link
to={`/auth/subscripe/${frequency}/${plan.id}`} to={`/auth/subscripe/${frequency}/${plan.id}`}
className="btn btn-outline-primary w-100 fw-bold mb-2" className="btn btn-green btn-square-small w-100 fw-bold mb-2"
> >
Subscribe Subscribe
</Link> </Link>
<Link <Link
to="/auth/reqest/demo" to="/auth/reqest/demo"
className="btn btn-outline-primary w-100 fw-bold" className="btn btn-outline-success w-100 fw-bold"
> >
Request a Demo Request a Demo
</Link> </Link>
</div> </div>
</div> </div>
</div> </div>
)) ))

View File

@ -0,0 +1,26 @@
import { SwiperSlide } from "swiper/react";
const SwaperSlideImages = ({
ImageUrl = "../../../public/assets/img/backgrounds/18.jpg",
Title = "",
Body = "",
ContentAlign = "right",
}) => {
return (
<div className="card h-100">
<img className="card-img-top" src={ImageUrl} alt="Card image cap" />
{/* <div className="card-body">
<h5 className="card-title">Card title</h5>
<p className="card-text">
Some quick example text to build on the card title and make up the
bulk of the card's content.
</p>
<a href="javascript:void(0)" className="btn btn-outline-primary">
Go somewhere
</a>
</div> */}
</div>
);
};
export default SwaperSlideImages;

View File

@ -29,35 +29,28 @@
font-size: 16px; font-size: 16px;
font-weight: 300; font-weight: 300;
} }
ul {
font-size: 16px;
font-weight: 300;
list-style-type: disc;
margin-block-start: 1em;
margin-block-end: 1em;
padding-inline-start: 40px;
unicode-bidi: isolate;
}
ul li { li.more-features-list-items {
padding: 10px 10px 10px 0; padding: 10px 10px 10px 0;
}
li {
unicode-bidi: isolate; unicode-bidi: isolate;
margin: 0px; margin: 0px;
display: list-item; display: list-item;
} }
.ul.more-features-list {
max-width: 430px;
padding: 10px 0 0 0;
display: block;
}
ul.more-features-list { ul.more-features-list {
font-size: 16px;
font-weight: 300;
list-style-type: none;
margin-block-start: 1em;
margin-block-end: 1em;
padding-inline-start: 40px;
unicode-bidi: isolate;
display: block; display: block;
position: relative; position: relative;
margin-left: 10px; margin-left: 10px;
padding: 10px 0 0 0;
display: block;
} }
.list-item { .list-item {
@ -93,3 +86,16 @@ ul.more-features-list {
stroke-dasharray: 125.6; stroke-dasharray: 125.6;
transform: rotate(-90deg); transform: rotate(-90deg);
} }
.login-pg-swiper {
width: 80vw; /* 80% of viewport width */
height: 70vh; /* 70% of viewport height */
margin: auto; /* Center the swiper container */
}
.swiper-slide img.login-pg-img-swiper {
display: block;
width: 100%; /* Image takes full width of the slide (which is 80vw) */
height: 100%; /* Image takes full height of the slide (which is 70vh) */
object-fit: contain; /* Ensures the entire image is visible without stretching, maintaining aspect ratio */
}

View File

@ -1,64 +1,60 @@
import { React, useRef } from "react"; import { React, useRef } from "react";
import LoginPage from "./LoginPage"; import LoginPage from "./LoginPage";
import "./MainLogin.css"; import "./MainLogin.css";
import { Swiper, SwiperSlide } from "swiper/react";
import { EffectFlip, Autoplay, Pagination, Navigation } from "swiper/modules";
const MainLogin = () => { const MainLogin = () => {
const progressCircle = useRef(null);
const progressContent = useRef(null);
const onAutoplayTimeLeft = (s, time, progress) => {
progressCircle.current.style.setProperty("--progress", 1 - progress);
progressContent.current.textContent = `${Math.ceil(time / 1000)}s`;
};
return ( return (
<> <>
<div className="authentication-inner row m-0"> <div className="authentication-inner row m-0">
<div className=" d-lg-flex col-lg-7 col-xl-8 align-items-center p-5 justify-content-center"> <div className=" d-lg-flex col-lg-7 col-xl-8 align-items-center p-5 justify-content-center">
<div className="w-75 text-start" style={{ marginTop: "75px" }}> {/* <div className="w-75 text-start" style={{ marginTop: "75px" }}> */}
<Swiper <div
spaceBetween={30} class="w-75 text-start swiper-container login-pg-swiper"
centeredSlides={true} style={{ marginTop: "75px" }}
rewind={true}
autoplay={{
delay: 3500,
disableOnInteraction: false,
}}
pagination={{
clickable: true,
}}
keyboard={{
enabled: true,
}}
navigation={false}
modules={[EffectFlip, Autoplay, Pagination, Navigation]}
className="mySwiper"
onSlideChange={() => {}}
onSwiper={(swiper) => {}}
onAutoplayTimeLeft={onAutoplayTimeLeft}
> >
<div className="autoplay-progress" slot="container-end"> <div
<svg viewBox="0 0 48 48" ref={progressCircle}> id="textCarousel"
<circle cx="24" cy="24" r="20"></circle> class="carousel slide"
</svg> data-bs-ride="carousel"
<span ref={progressContent}></span> >
<div class="carousel-inner">
<div class="carousel-item active">
<div class="p-5 text-center">
<p>
<img
className="w-100 login-pg-img-swiper"
src="/img/illustrations/03.png"
></img>
</p>
</div> </div>
<SwiperSlide> </div>
<img src="/img/illustrations/03.png"></img> <div class="carousel-item active">
</SwiperSlide> <div class="p-5 text-center">
<SwiperSlide> <p>
<img
className="w-100 login-pg-img-swiper"
src="/img/illustrations/fm-01.png"
></img>
</p>
</div>
</div>
<div class="carousel-item ">
<div class="p-5 ">
<p>
<div className="text-start"> <div className="text-start">
<h1 className="display-header"> <h3 className="display-header text-black">
{" "}
Financial Management (Expense & Billing) Financial Management (Expense & Billing)
</h1> </h3>
<h4 className="display-title"> <h4 className="display-title text-black">
Eliminate Paper Receipts. Take Control of Your Cash Flow. Eliminate Paper Receipts. Take Control of Your Cash
Flow.
</h4> </h4>
<p className="display-body"> <p className="display-body">
Managing field expenses is often messy, slow, and prone to Managing field expenses is often messy, slow, and
errors. onfieldwork.com digitizes the entire process, giving prone to errors. onfieldwork.com digitizes the entire
you real-time financial visibility and control, whether your process, giving you real-time financial visibility and
team is on a construction site or servicing a client's control, whether your team is on a construction site
facility. or servicing a client's facility.
</p> </p>
<ul className="more-features-list list-unstyled"> <ul className="more-features-list list-unstyled">
<li> <li>
@ -67,9 +63,9 @@ const MainLogin = () => {
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b> Billing & Collection:</b> Generate accurate <b> Billing & Collection:</b> Generate accurate
invoices based on logged project data and efficiently invoices based on logged project data and
track the status of payments to speed up collection efficiently track the status of payments to
cycles. speed up collection cycles.
</div> </div>
</div> </div>
</li> </li>
@ -79,9 +75,9 @@ const MainLogin = () => {
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b> Recurring Expenses:</b> Set up and manage <b> Recurring Expenses:</b> Set up and manage
automatic payments for predictable costs (like monthly automatic payments for predictable costs (like
equipment rentals or subscriptions) to ensure they are monthly equipment rentals or subscriptions) to
never missed. ensure they are never missed.
</div> </div>
</div> </div>
</li> </li>
@ -90,10 +86,10 @@ const MainLogin = () => {
<i className="bx bxs-check-circle text-success"></i> <i className="bx bxs-check-circle text-success"></i>
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b> Advance Payment Management:</b> A clear system for <b> Advance Payment Management:</b> A clear
issuing and tracking advances given to field staff. system for issuing and tracking advances given
Easily reconcile these advances against submitted to field staff. Easily reconcile these advances
expenses and salaries. against submitted expenses and salaries.
</div> </div>
</div> </div>
</li> </li>
@ -102,31 +98,41 @@ const MainLogin = () => {
<i className="bx bxs-check-circle text-success"></i> <i className="bx bxs-check-circle text-success"></i>
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b> Petty Cash Management:</b> Maintain a secure, <b> Petty Cash Management:</b> Maintain a
digital ledger for small, daily expenditures, secure, digital ledger for small, daily
replacing error-prone manual logbooks. expenditures, replacing error-prone manual
logbooks.
</div> </div>
</div> </div>
</li> </li>
</ul> </ul>
</div> </div>
</SwiperSlide> </p>
<SwiperSlide> {/* <button class="btn btn-light">Learn More</button> */}
</div>
</div>
<div class="carousel-item">
<div class="p-5 text-center ">
<p className="text-start">
<div className="text-start"> <div className="text-start">
<h1 className="display-header"> <h1 className="display-header text-black">
{" "}
Flexible Project Approval/Review Workflow Flexible Project Approval/Review Workflow
</h1> </h1>
<h4 className="display-title"> <h4 className="display-title text-black">
Streamline Decisions. Accelerate Project Completion. Streamline Decisions. Accelerate Project Completion.
</h4> </h4>
<p className="display-body"> </div>
The speed of a project often hinges on the efficiency of the
review and approval process. onfieldwork.com replaces <p className="display-body ">
bottlenecks and email chains with flexible, defined digital The speed of a project often hinges on the efficiency of
workflows that keep work moving forward. the review and approval process. onfieldwork.com
replaces bottlenecks and email chains with flexible,
defined digital workflows that keep work moving forward.
</p> </p>
<ul className="more-features-list list-unstyled"> <ul className="more-features-list list-unstyled">
<li> <li className="more-features-list-items">
<div className="d-flex"> <div className="d-flex">
<i className="bx bxs-check-circle text-success"></i> <i className="bx bxs-check-circle text-success"></i>
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
@ -135,9 +141,9 @@ const MainLogin = () => {
<ul> <ul>
<li> <li>
<b> Define Your Process:</b> Easily configure <b> Define Your Process:</b> Easily configure
multi-step approval paths for any item: document multi-step approval paths for any item:
submissions, expense reports, task completion document submissions, expense reports, task
sign-offs, or material requests. completion sign-offs, or material requests.
</li> </li>
<li> <li>
<b>Role-Based Routing:</b> Approvals are <b>Role-Based Routing:</b> Approvals are
@ -150,7 +156,7 @@ const MainLogin = () => {
</div> </div>
</div> </div>
</li> </li>
{/* <li> <li>
<div className="d-flex"> <div className="d-flex">
<i className="bx bxs-check-circle text-success"></i> <i className="bx bxs-check-circle text-success"></i>
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
@ -158,15 +164,15 @@ const MainLogin = () => {
<b>Real-Time Notifications & Tracking</b> <b>Real-Time Notifications & Tracking</b>
<ul> <ul>
<li> <li>
<b>No More Delays:</b> Reviewers receive instant <b>No More Delays:</b> Reviewers receive
alerts via the Web and Mobile app when an item instant alerts via the Web and Mobile app when
requires their attention. an item requires their attention.
</li> </li>
<li> <li>
<b> Audit Trail:</b> Every action, comment, <b> Audit Trail:</b> Every action, comment,
approval, or rejection is logged with a timestamp approval, or rejection is logged with a
and user ID, providing a complete, non-repudiable timestamp and user ID, providing a complete,
history for every decision. non-repudiable history for every decision.
</li> </li>
</ul>{" "} </ul>{" "}
</div> </div>
@ -177,35 +183,46 @@ const MainLogin = () => {
<i className="bx bxs-check-circle text-success"></i> <i className="bx bxs-check-circle text-success"></i>
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b>Seamless Task Handoff</b> Once a task or document <b>Seamless Task Handoff</b> Once a task or
is approved, the next action is immediately document is approved, the next action is
triggeredwhether it's allocating a new work package immediately triggeredwhether it's allocating a
to the team or initiating a purchase order. new work package to the team or initiating a
purchase order.
</div> </div>
</div> </div>
</li> */} </li>
</ul> </ul>
</p>
</div> </div>
</SwiperSlide> </div>
<SwiperSlide>
<div class="carousel-item">
<div class="p-5 text-center ">
<p className="text-start">
<div className="text-start"> <div className="text-start">
<h1 className="display-header">Project Management</h1> <h1 className="display-header text-black">
<h4 className="display-title"> {" "}
Project Management
</h1>
<h4 className="display-title text-black">
End-to-End Project Lifecycle Management End-to-End Project Lifecycle Management
</h4> </h4>
</div>
<p className="display-body"> <p className="display-body">
Stop using spreadsheets and start managing progress. Stop using spreadsheets and start managing progress.
onfieldwork.com is your single source of truth for all onfieldwork.com is your single source of truth for all
project activities. project activities.
</p> </p>
<ul className="more-features-list list-unstyled"> <ul className="more-features-list list-unstyled">
<li> <li className="more-features-list-items">
<div className="d-flex"> <div className="d-flex">
<i className="bx bxs-check-circle text-success"></i> <i className="bx bxs-check-circle text-success"></i>
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b> Create & Manage Multiple Projects:</b>Organize all <b> Create & Manage Multiple Projects:</b>Organize
current and upcoming work in a centralized dashboard. all current and upcoming work in a centralized
dashboard.
</div> </div>
</div> </div>
</li> </li>
@ -224,8 +241,8 @@ const MainLogin = () => {
<i className="bx bxs-check-circle text-success"></i> <i className="bx bxs-check-circle text-success"></i>
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b>Team & Document Management:</b>Secure storage for <b>Team & Document Management:</b>Secure storage
drawings, contracts, and easy team setup. for drawings, contracts, and easy team setup.
</div> </div>
</div> </div>
</li> </li>
@ -235,15 +252,42 @@ const MainLogin = () => {
<div className="list-item ms-2 pb-2"> <div className="list-item ms-2 pb-2">
{" "} {" "}
<b>Work Allocation & Tracking:</b>Implement <b>Work Allocation & Tracking:</b>Implement
customizable Approval/Review Workflows for tasks and customizable Approval/Review Workflows for tasks
documents. and documents.
</div> </div>
</div> </div>
</li> </li>
</ul> </ul>
</p>
</div>
</div>
</div>
<button
class="carousel-control-prev"
type="button"
data-bs-target="#textCarousel"
data-bs-slide="prev"
>
<span
class="carousel-control-prev-icon"
aria-hidden="true"
></span>
<span class="visually-hidden">Previous</span>
</button>
<button
class="carousel-control-next"
type="button"
data-bs-target="#textCarousel"
data-bs-slide="next"
>
<span
class="carousel-control-next-icon"
aria-hidden="true"
></span>
<span class="visually-hidden">Next</span>
</button>
</div> </div>
</SwiperSlide>
</Swiper>
</div> </div>
</div> </div>
<LoginPage /> <LoginPage />