working on element theme
- note: gradient color doesn't take effects on texts
This commit is contained in:
@@ -1,187 +1,190 @@
|
|||||||
/* File: src/components/home/ContactSection.module.css */
|
/* File: src/components/home/ContactSection.module.css */
|
||||||
|
|
||||||
.contactSection {
|
.contactSection {
|
||||||
padding: 100px 0;
|
padding: 100px 0;
|
||||||
background-color: #f8f9fa;
|
background-color: #f8f9fa;
|
||||||
position: relative;
|
position: relative;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1200px;
|
max-width: 1200px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
padding: 0 16px;
|
padding: 0 16px;
|
||||||
position: relative;
|
position: relative;
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
.backgroundElements {
|
.backgroundElements {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.glowOrbTop {
|
.glowOrbTop {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 400px;
|
width: 400px;
|
||||||
height: 400px;
|
height: 400px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background: radial-gradient(circle, rgba(24, 144, 255, 0.15) 0%, rgba(24, 144, 255, 0.05) 50%, rgba(0, 0, 0, 0) 70%);
|
background: var(--primary-glow);
|
||||||
top: -200px;
|
top: -200px;
|
||||||
left: -150px;
|
left: -150px;
|
||||||
filter: blur(50px);
|
filter: blur(50px);
|
||||||
}
|
}
|
||||||
|
|
||||||
.glowOrbBottom {
|
.glowOrbBottom {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 500px;
|
width: 500px;
|
||||||
height: 500px;
|
height: 500px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background: radial-gradient(circle, rgba(64, 169, 255, 0.15) 0%, rgba(64, 169, 255, 0.05) 50%, rgba(0, 0, 0, 0) 70%);
|
background: radial-gradient(
|
||||||
bottom: -250px;
|
circle,
|
||||||
right: -200px;
|
rgba(64, 169, 255, 0.15) 0%,
|
||||||
filter: blur(60px);
|
rgba(64, 169, 255, 0.05) 50%,
|
||||||
}
|
rgba(0, 0, 0, 0) 70%
|
||||||
|
);
|
||||||
|
bottom: -250px;
|
||||||
|
right: -200px;
|
||||||
|
filter: blur(60px);
|
||||||
|
}
|
||||||
|
|
||||||
.sectionHeader {
|
.sectionHeader {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin-bottom: 60px;
|
margin-bottom: 60px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.sectionTitle {
|
.sectionTitle {
|
||||||
font-size: 2.5rem !important;
|
font-size: 2.5rem !important;
|
||||||
font-weight: 700 !important;
|
font-weight: 700 !important;
|
||||||
margin-bottom: 16px !important;
|
margin-bottom: 16px !important;
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
-webkit-background-clip: text;
|
|
||||||
-webkit-text-fill-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sectionSubtitle {
|
-webkit-background-clip: text;
|
||||||
font-size: 1.1rem;
|
-webkit-text-fill-color: transparent;
|
||||||
color: #666;
|
}
|
||||||
max-width: 600px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
.sectionSubtitle {
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: #666;
|
||||||
|
max-width: 600px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contactContent {
|
||||||
|
background: rgba(255, 255, 255, 0.8);
|
||||||
|
border-radius: 16px;
|
||||||
|
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.05);
|
||||||
|
backdrop-filter: blur(8px);
|
||||||
|
padding: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contactInfo {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contactInfoItem {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.iconWrapper {
|
||||||
|
width: 48px;
|
||||||
|
height: 48px;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: var(--primary);
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
box-shadow: 0 4px 8px rgba(152, 71, 232, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.contactIcon {
|
||||||
|
font-size: 20px;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contactLabel {
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contactValue {
|
||||||
|
color: #666;
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mapContainer {
|
||||||
|
margin-top: 16px;
|
||||||
|
border-radius: 12px;
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mapImage {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contactForm {
|
||||||
|
background: white;
|
||||||
|
border-radius: 12px;
|
||||||
|
padding: 32px;
|
||||||
|
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
|
||||||
|
}
|
||||||
|
|
||||||
|
.formTitle {
|
||||||
|
margin-bottom: 24px !important;
|
||||||
|
color: #1890ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.messageInput {
|
||||||
|
resize: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.submitButton {
|
||||||
|
height: 48px;
|
||||||
|
padding: 0 32px;
|
||||||
|
border-radius: 24px;
|
||||||
|
font-weight: 500;
|
||||||
|
border: none;
|
||||||
|
box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
|
||||||
|
transition: all 0.3s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.submitButton:hover {
|
||||||
|
transform: translateY(-2px);
|
||||||
|
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 992px) {
|
||||||
.contactContent {
|
.contactContent {
|
||||||
background: rgba(255, 255, 255, 0.8);
|
padding: 24px;
|
||||||
border-radius: 16px;
|
|
||||||
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.05);
|
|
||||||
backdrop-filter: blur(8px);
|
|
||||||
padding: 40px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.contactInfo {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
gap: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.contactInfoItem {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iconWrapper {
|
|
||||||
width: 48px;
|
|
||||||
height: 48px;
|
|
||||||
border-radius: 50%;
|
|
||||||
background: linear-gradient(135deg, #1890ff, #096dd9);
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
box-shadow: 0 4px 8px rgba(24, 144, 255, 0.25);
|
|
||||||
}
|
|
||||||
|
|
||||||
.contactIcon {
|
|
||||||
font-size: 20px;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.contactLabel {
|
|
||||||
display: block;
|
|
||||||
margin-bottom: 4px;
|
|
||||||
font-size: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.contactValue {
|
|
||||||
color: #666;
|
|
||||||
font-size: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mapContainer {
|
|
||||||
margin-top: 16px;
|
|
||||||
border-radius: 12px;
|
|
||||||
overflow: hidden;
|
|
||||||
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.mapImage {
|
|
||||||
width: 100%;
|
|
||||||
height: auto;
|
|
||||||
display: block;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.contactForm {
|
.contactForm {
|
||||||
background: white;
|
padding: 24px;
|
||||||
border-radius: 12px;
|
margin-top: 24px;
|
||||||
padding: 32px;
|
}
|
||||||
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.contactSection {
|
||||||
|
padding: 60px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.formTitle {
|
.sectionTitle {
|
||||||
margin-bottom: 24px !important;
|
font-size: 2rem !important;
|
||||||
color: #1890ff;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.messageInput {
|
.mapContainer {
|
||||||
resize: none;
|
margin-bottom: 0;
|
||||||
}
|
|
||||||
|
|
||||||
.submitButton {
|
|
||||||
height: 48px;
|
|
||||||
padding: 0 32px;
|
|
||||||
border-radius: 24px;
|
|
||||||
font-weight: 500;
|
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
border: none;
|
|
||||||
box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
.submitButton:hover {
|
|
||||||
transform: translateY(-2px);
|
|
||||||
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
|
||||||
background: linear-gradient(90deg, #40a9ff, #1890ff);
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 992px) {
|
|
||||||
.contactContent {
|
|
||||||
padding: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.contactForm {
|
|
||||||
padding: 24px;
|
|
||||||
margin-top: 24px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.contactSection {
|
|
||||||
padding: 60px 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sectionTitle {
|
|
||||||
font-size: 2rem !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mapContainer {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -21,11 +21,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.logoContainer {
|
.logoContainer {
|
||||||
|
/* background: var(--primary) !important; */
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.logoText {
|
.logoText {
|
||||||
|
color: #6e48aa !important;
|
||||||
margin: 0 !important;
|
margin: 0 !important;
|
||||||
font-weight: 700 !important;
|
font-weight: 700 !important;
|
||||||
font-size: 1.5rem !important;
|
font-size: 1.5rem !important;
|
||||||
|
|||||||
@@ -46,7 +46,6 @@
|
|||||||
.continueButton {
|
.continueButton {
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
height: 48px;
|
height: 48px;
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
border: none;
|
border: none;
|
||||||
border-radius: 24px;
|
border-radius: 24px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
@@ -54,7 +53,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.continueButton:hover {
|
.continueButton:hover {
|
||||||
background: linear-gradient(90deg, #40a9ff, #1890ff);
|
|
||||||
transform: translateY(-2px);
|
transform: translateY(-2px);
|
||||||
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
font-size: 2.5rem !important;
|
font-size: 2.5rem !important;
|
||||||
font-weight: 700 !important;
|
font-weight: 700 !important;
|
||||||
margin-bottom: 16px !important;
|
margin-bottom: 16px !important;
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
-webkit-background-clip: text;
|
-webkit-background-clip: text;
|
||||||
-webkit-text-fill-color: transparent;
|
-webkit-text-fill-color: transparent;
|
||||||
}
|
}
|
||||||
@@ -91,13 +91,13 @@
|
|||||||
|
|
||||||
.viewButton {
|
.viewButton {
|
||||||
background: #fff;
|
background: #fff;
|
||||||
color: #1890ff;
|
color: #6e48aa;
|
||||||
border: none;
|
border: none;
|
||||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
||||||
}
|
}
|
||||||
|
|
||||||
.viewButton:hover {
|
.viewButton:hover {
|
||||||
background: #1890ff;
|
background: #6e48aa;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -114,6 +114,7 @@
|
|||||||
|
|
||||||
.techTag {
|
.techTag {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
color: #6e48aa;
|
||||||
}
|
}
|
||||||
|
|
||||||
.featuredBadge {
|
.featuredBadge {
|
||||||
@@ -151,7 +152,7 @@
|
|||||||
padding: 0 32px;
|
padding: 0 32px;
|
||||||
border-radius: 24px;
|
border-radius: 24px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
border: none;
|
border: none;
|
||||||
box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
|
box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
|
||||||
transition: all 0.3s ease;
|
transition: all 0.3s ease;
|
||||||
@@ -160,7 +161,7 @@
|
|||||||
.viewAllButton:hover {
|
.viewAllButton:hover {
|
||||||
transform: translateY(-2px);
|
transform: translateY(-2px);
|
||||||
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
||||||
background: linear-gradient(90deg, #40a9ff, #1890ff);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
@media (max-width: 768px) {
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
width: 500px;
|
width: 500px;
|
||||||
height: 500px;
|
height: 500px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background: radial-gradient(circle, rgba(64, 169, 255, 0.2) 0%, rgba(24, 144, 255, 0.1) 50%, rgba(0, 0, 0, 0) 70%);
|
background: var(--primary-glow);
|
||||||
top: -150px;
|
top: -150px;
|
||||||
right: -100px;
|
right: -100px;
|
||||||
filter: blur(50px);
|
filter: blur(50px);
|
||||||
@@ -45,7 +45,7 @@
|
|||||||
font-size: 2.5rem !important;
|
font-size: 2.5rem !important;
|
||||||
font-weight: 700 !important;
|
font-weight: 700 !important;
|
||||||
margin-bottom: 16px !important;
|
margin-bottom: 16px !important;
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
-webkit-background-clip: text;
|
-webkit-background-clip: text;
|
||||||
-webkit-text-fill-color: transparent;
|
-webkit-text-fill-color: transparent;
|
||||||
}
|
}
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
|
|
||||||
.serviceIcon {
|
.serviceIcon {
|
||||||
font-size: 3rem;
|
font-size: 3rem;
|
||||||
color: #1890ff;
|
color: #6e48aa;
|
||||||
}
|
}
|
||||||
|
|
||||||
.learnMoreBtn {
|
.learnMoreBtn {
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
font-size: 2.5rem !important;
|
font-size: 2.5rem !important;
|
||||||
font-weight: 700 !important;
|
font-weight: 700 !important;
|
||||||
margin-bottom: 16px !important;
|
margin-bottom: 16px !important;
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
-webkit-background-clip: text;
|
-webkit-background-clip: text;
|
||||||
-webkit-text-fill-color: transparent;
|
-webkit-text-fill-color: transparent;
|
||||||
}
|
}
|
||||||
@@ -134,7 +134,7 @@
|
|||||||
padding: 0 32px;
|
padding: 0 32px;
|
||||||
border-radius: 24px;
|
border-radius: 24px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
background: linear-gradient(90deg, #1890ff, #096dd9);
|
|
||||||
color: white;
|
color: white;
|
||||||
border: none;
|
border: none;
|
||||||
box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
|
box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
|
||||||
@@ -146,7 +146,7 @@
|
|||||||
.viewAllButton:hover {
|
.viewAllButton:hover {
|
||||||
transform: translateY(-2px);
|
transform: translateY(-2px);
|
||||||
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
box-shadow: 0 6px 16px rgba(24, 144, 255, 0.2);
|
||||||
background: linear-gradient(90deg, #40a9ff, #1890ff);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
@media (max-width: 768px) {
|
||||||
|
|||||||
@@ -2,6 +2,13 @@
|
|||||||
--background: #ffffff;
|
--background: #ffffff;
|
||||||
--foreground: #171717;
|
--foreground: #171717;
|
||||||
--primary: linear-gradient(135deg, #6e48aa 0%, #9d50bb 100%);
|
--primary: linear-gradient(135deg, #6e48aa 0%, #9d50bb 100%);
|
||||||
|
--secondary: linear-gradient(135deg, #00c1d4 0%, #ff5f6d 100%);
|
||||||
|
--primary-glow: radial-gradient(
|
||||||
|
circle,
|
||||||
|
rgba(152, 71, 232, 0.2) 0%,
|
||||||
|
rgba(71, 1, 90, 0.1) 50%,
|
||||||
|
rgba(0, 0, 0, 0) 70%
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (prefers-color-scheme: dark) {
|
@media (prefers-color-scheme: dark) {
|
||||||
|
|||||||
@@ -3,7 +3,8 @@ import type { ThemeConfig } from "antd";
|
|||||||
|
|
||||||
// Cosmic Gradient Palette (Bright/Futuristic)
|
// Cosmic Gradient Palette (Bright/Futuristic)
|
||||||
export const gradientColors = {
|
export const gradientColors = {
|
||||||
primary: "linear-gradient(135deg, #6e48aa 0%, #9d50bb 100%)",
|
// note: gradient color doesn't take effects on texts
|
||||||
|
primary: "#6e48aa", // "linear-gradient(135deg, #6e48aa 0%, #9d50bb 100%)",
|
||||||
secondary: "linear-gradient(135deg, #00C1D4 0%, #FF5F6D 100%)",
|
secondary: "linear-gradient(135deg, #00C1D4 0%, #FF5F6D 100%)",
|
||||||
darkSpace: "linear-gradient(to right, #0F0525, #2A0B45)",
|
darkSpace: "linear-gradient(to right, #0F0525, #2A0B45)",
|
||||||
};
|
};
|
||||||
@@ -35,6 +36,9 @@ export const themeConfig: ThemeConfig = {
|
|||||||
colorTextHeading: gradientColors.primary,
|
colorTextHeading: gradientColors.primary,
|
||||||
colorLink: gradientColors.primary, // Nebula pink
|
colorLink: gradientColors.primary, // Nebula pink
|
||||||
},
|
},
|
||||||
|
Tag:{
|
||||||
|
colorPrimary: gradientColors.primary,
|
||||||
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user