Phase 1: Homepage seamless design - add gradient transitions

- Added gradient transitions between sections in global.css
- Portfolio section now has gradient-top (dark to white fade)
- Blog section now has gradient-bottom (white fade from dark)
- Reduced portfolio overlay opacity from 0.85 to 0.65
- Added border to blog cards for white-on-white visibility
- Blog cards now have primary color accent on hover
This commit is contained in:
Kunthawat Greethong
2026-05-21 14:29:31 +07:00
parent 9db1d12b9c
commit b9cd01a55f
85 changed files with 8005 additions and 4702 deletions

View File

@@ -0,0 +1,248 @@
---
import Base from '../../layouts/Base.astro';
import Navigation from '../../components/Navigation.astro';
import Footer from '../../components/Footer.astro';
import PageHero from '../../components/PageHero.astro';
import { getCollection, render } from 'astro:content';
// For SSR mode, use Astro.params directly
const { slug } = Astro.params;
const services = await getCollection('services');
// Use id for matching since slug might be undefined
const service = services.find(s => s.id === slug);
if (!service) {
return Astro.redirect('/404');
}
const { Content } = await render(service);
const features = [
{ icon: service.data.feature1_icon, title: service.data.feature1_title, desc: service.data.feature1_desc },
{ icon: service.data.feature2_icon, title: service.data.feature2_title, desc: service.data.feature2_desc },
{ icon: service.data.feature3_icon, title: service.data.feature3_title, desc: service.data.feature3_desc },
{ icon: service.data.feature4_icon, title: service.data.feature4_title, desc: service.data.feature4_desc },
{ icon: service.data.feature5_icon, title: service.data.feature5_title, desc: service.data.feature5_desc },
{ icon: service.data.feature6_icon, title: service.data.feature6_title, desc: service.data.feature6_desc },
].filter(f => f.title);
const processSteps = [
{ num: "01", title: "วิเคราะห์", desc: service.data.category === 'tech-consult' ? "วิเคราะห์กระบวนการทำงานปัจจุบันและหาโอกาส" : "วิเคราะห์การตลาดปัจจุบันและหาโอกาส" },
{ num: "02", title: "ออกแบบ", desc: "ออกแบบระบบที่เหมาะกับความต้องการและ budget" },
{ num: "03", title: "พัฒนา", desc: "พัฒนาและ deploy ระบบพร้อมทดสอบก่อนใช้งานจริง" },
{ num: "04", title: service.data.category === 'tech-consult' ? "Support" : "วัดผล", desc: service.data.category === 'tech-consult' ? "ดูแลและปรับปรุงระบบให้ทำงานได้อย่างต่อเนื่อง" : "ติดตามผลและปรับปรุงอย่างต่อเนื่องเพื่อเพิ่ม ROI" },
];
const uspText = service.data.category === 'tech-consult'
? "ลูกค้าที่ใช้บริการ Consult จะได้รับ Server สำหรับ App และ AI ฟรี (สำหรับการใช้งานปกติ) หากต้องการใช้งานหนักหรือ Resource-intensive จะมีค่าใช้จ่ายเพิ่มเติม"
: "ลูกค้าที่ใช้ Server ของเราจะได้รับบริการแก้ไขและเพิ่มเนื้อหาเว็บไซต์ฟรี! จ่ายเฉพาะเมื่อต้องการ Redesign ทั้งหมด หรือ Upgrade ฟีเจอร์ใหญ่ เช่น เพิ่มระบบ E-commerce";
const uspTitle = service.data.category === 'tech-consult'
? "Server ฟรีสำหรับลูกค้า Consult"
: "แก้ไขเนื้อหาฟรี!";
---
<Base title={`${service.data.title} | MoreminiMore`}>
<Navigation />
<PageHero
badge={service.data.badge}
title={service.data.title}
subtitle={service.data.subtitle}
/>
<!-- Objective Badge -->
<section class="section section-dark" style="padding: 40px 0;">
<div class="container">
<div class="hero-objective">
<span class="objective-label">เป้าหมายหลัก:</span>
<span class="objective-value">{service.data.objective}</span>
</div>
</div>
</section>
<!-- USP Section -->
<section class="section section-light usp-section">
<div class="container">
<div class="usp-card">
<div class="usp-icon">🎁</div>
<div class="usp-content">
<h3 class="usp-title">{uspTitle}</h3>
<p class="usp-desc">{uspText}</p>
</div>
</div>
</div>
</section>
<!-- Features Section -->
<section class="section features-section">
<div class="container">
<div class="section-header">
<span class="section-badge">บริการของเรา</span>
<h2 class="section-title">{service.data.title} ที่เราช่วยได้</h2>
</div>
<div class="features-grid">
{features.map((feature, i) => (
<div class="feature-card" style={`--delay: ${i * 0.1}s`}>
<div class="feature-icon">{feature.icon || "⭐"}</div>
<h3 class="feature-title">{feature.title}</h3>
<p class="feature-desc">{feature.desc}</p>
</div>
))}
</div>
</div>
</section>
<!-- Process Section -->
<section class="section section-dark process-section">
<div class="container">
<div class="section-header">
<span class="section-badge">กระบวนการ</span>
<h2 class="section-title-light">วิธีการทำงานของเรา</h2>
</div>
<div class="process-steps">
{processSteps.map((step, i) => (
<div class="step" style={`--delay: ${i * 0.1}s`}>
<span class="step-num">{step.num}</span>
<h3 class="step-title">{step.title}</h3>
<p class="step-desc">{step.desc}</p>
</div>
))}
</div>
</div>
</section>
<!-- CTA Section -->
<section class="section section-primary cta-section">
<div class="container">
<div class="cta-content">
<h2 class="cta-title">ต้องการ{service.data.objective}?</h2>
<p class="cta-desc">ปรึกษาฟรี! เราพร้อมช่วยวิเคราะห์และออกแบบโซลูชันที่เหมาะกับคุณ</p>
<div class="cta-actions">
<a href="/contact" class="btn btn-dark btn-lg">ติดต่อเรา</a>
<a href="tel:0809955945" class="btn btn-outline-dark btn-lg">080-995-5945</a>
</div>
</div>
</div>
</section>
<Footer />
</Base>
<style>
.section-dark {
background: var(--color-dark);
color: var(--color-white);
}
.section-light {
background: var(--color-gray-100);
}
.section-primary {
background: var(--color-primary);
}
.hero-objective {
display: inline-flex;
align-items: center;
gap: 12px;
background: rgba(254, 212, 0, 0.15);
padding: 12px 24px;
border-radius: 40px;
border: 1px solid rgba(254, 212, 0, 0.3);
}
.objective-label { color: rgba(255,255,255,0.6); font-size: 14px; }
.objective-value { color: var(--color-primary); font-weight: 700; font-size: 16px; }
.usp-card {
display: flex;
align-items: flex-start;
gap: 24px;
padding: 32px;
background: linear-gradient(135deg, var(--color-primary) 0%, #ffe066 100%);
border-radius: 20px;
}
.usp-icon { font-size: 48px; flex-shrink: 0; }
.usp-title { font-size: 24px; font-weight: 700; color: var(--color-black); margin-bottom: 12px; }
.usp-desc { font-size: 16px; color: rgba(0,0,0,0.8); line-height: 1.6; }
.section-header { text-align: center; margin-bottom: 60px; }
.section-badge {
display: inline-block;
background: var(--color-primary);
color: var(--color-black);
padding: 6px 16px;
border-radius: 20px;
font-size: 13px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 16px;
}
.section-title { font-size: clamp(28px, 4vw, 42px); font-weight: 700; color: var(--color-black); }
.section-title-light { font-size: clamp(28px, 4vw, 42px); font-weight: 700; color: var(--color-white); }
.features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.feature-card {
background: var(--color-white);
border-radius: 16px;
padding: 40px 28px;
text-align: center;
border: 1px solid rgba(0,0,0,0.05);
transition: all 0.3s ease;
animation: fadeUp 0.6s ease backwards;
animation-delay: var(--delay);
}
.feature-card:hover {
transform: translateY(-8px);
box-shadow: 0 20px 40px rgba(0,0,0,0.1);
border-color: var(--color-primary);
}
.feature-icon { font-size: 48px; margin-bottom: 20px; }
.feature-title { font-size: 20px; font-weight: 700; margin-bottom: 12px; color: var(--color-black); }
.feature-desc { font-size: 14px; color: var(--color-gray-600); line-height: 1.6; }
.process-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
.step {
text-align: center;
padding: 32px 24px;
background: rgba(255,255,255,0.03);
border-radius: 16px;
border: 1px solid rgba(255,255,255,0.05);
transition: all 0.3s ease;
animation: fadeUp 0.6s ease backwards;
animation-delay: var(--delay);
}
.step:hover { transform: translateY(-4px); border-color: var(--color-primary); }
.step-num { display: block; font-family: var(--font-display); font-size: 48px; font-weight: 800; color: var(--color-primary); margin-bottom: 16px; }
.step-title { font-size: 18px; font-weight: 700; margin-bottom: 8px; color: var(--color-white); }
.step-desc { font-size: 14px; color: rgba(255,255,255,0.5); line-height: 1.6; }
.cta-content { text-align: center; }
.cta-title { font-size: clamp(28px, 4vw, 42px); font-weight: 800; margin-bottom: 16px; color: var(--color-black); }
.cta-desc { font-size: 18px; color: rgba(0,0,0,0.7); margin-bottom: 32px; max-width: 500px; margin-left: auto; margin-right: auto; }
.cta-actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.btn-dark { background: var(--color-dark); color: var(--color-white); }
.btn-dark:hover { background: var(--color-dark-light); }
.btn-outline-dark { background: transparent; color: var(--color-black); border: 2px solid var(--color-black); }
.btn-outline-dark:hover { background: var(--color-black); color: var(--color-white); }
.btn-lg { padding: 16px 36px; font-size: 16px; font-weight: 600; text-transform: uppercase; letter-spacing: 2px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
@keyframes fadeUp {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 1024px) {
.features-grid { grid-template-columns: repeat(2, 1fr); }
.process-steps { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
.features-grid, .process-steps { grid-template-columns: 1fr; }
.usp-card { flex-direction: column; }
.cta-actions { flex-direction: column; }
.btn-lg { width: 100%; }
}
</style>

View File

@@ -1,262 +0,0 @@
---
import Base from '../../layouts/Base.astro';
import Navigation from '../../components/Navigation.astro';
import Hero from '../../components/Hero.astro';
import Footer from '../../components/Footer.astro';
const features = [
{
icon: "🤖",
title: "AI Chatbot",
desc: "Chatbot ที่ใช้ AI ตอบคำถามลูกค้าได้ 24/7 รองรับภาษาไทย"
},
{
icon: "💬",
title: "AI Customer Service",
desc: "ระบบตอบคำถามอัตโนมัติด้วย AI ที่เข้าใจบริบท"
},
{
icon: "📝",
title: "AI Content Generation",
desc: "สร้าง content อัตโนมัติด้วย AI ที่ SEO friendly"
},
{
icon: "📧",
title: "AI Email Marketing",
desc: "ส่ง email ที่ personalized ด้วย AI ที่วิเคราะห์พฤติกรรม"
},
{
icon: "📊",
title: "AI Sales Prediction",
desc: "ทำนายยอดขายและวางแผนการตลาดด้วย AI"
},
{
icon: "🎯",
title: "AI Lead Scoring",
desc: "ให้คะแนน leads อัตโนมัติด้วย AI ที่เรียนรู้จากข้อมูล"
}
];
---
<Base title="AI Automation | MoreminiMore">
<Navigation />
<!-- Hero Section -->
<Hero
title="AI Automation"
subtitle="นำ AI มาใช้เพื่อเพิ่มยอดขายและปรับปรุงการให้บริการลูกค้า เพิ่มประสิทธิภาพ ลดต้นทุน ด้วยเทคโนโลยีล้ำสมัย"
badge="บริการ"
image="/images/hero/ai-automation-hero.jpg"
theme="yellow"
showCTA={false}
variant="centered"
size="compact"
/>
<!-- Features Section -->
<section class="section features-section">
<div class="container">
<div class="section-header">
<span class="section-badge">คุณสมบัติ</span>
<h2 class="section-title">AI ที่เรานำมาใช้</h2>
</div>
<div class="features-grid">
{features.map((feature, i) => (
<div class="feature-card card card-accent" style={`animation-delay: ${i * 0.1}s`}>
<span class="feature-icon">{feature.icon}</span>
<h3 class="feature-title">{feature.title}</h3>
<p class="feature-desc">{feature.desc}</p>
</div>
))}
</div>
</div>
</section>
<!-- Case Study Section -->
<section class="section section-light case-section">
<div class="container">
<div class="section-header">
<span class="section-badge">กรณีศึกษา</span>
<h2 class="section-title">ผลลัพธ์ที่ลูกค้าได้รับ</h2>
</div>
<div class="case-grid">
<div class="case-card">
<span class="case-number">+35%</span>
<span class="case-label">เพิ่มยอดขาย</span>
</div>
<div class="case-card">
<span class="case-number">-60%</span>
<span class="case-label">ลดค่าใช้จ่าย</span>
</div>
<div class="case-card">
<span class="case-number">24/7</span>
<span class="case-label">ให้บริการลูกค้า</span>
</div>
<div class="case-card">
<span class="case-number">3x</span>
<span class="case-label">เร็วขึ้น</span>
</div>
</div>
</div>
</section>
<!-- CTA Section -->
<section class="section section-primary cta-section">
<div class="container">
<div class="cta-content">
<h2 class="cta-title">พร้อมนำ AI มาใช้ในธุรกิจ?</h2>
<p class="cta-desc">ปรึกษาฟรี! เราพร้อมวิเคราะห์และออกแบบ AI solution ที่เหมาะกับคุณ</p>
<div class="cta-actions">
<a href="/contact" class="btn btn-secondary btn-lg">ติดต่อเรา</a>
<a href="tel:0809955945" class="btn btn-outline btn-lg">080-995-5945</a>
</div>
</div>
</div>
</section>
<Footer />
</Base>
<style>
.section-header {
text-align: center;
margin-bottom: 60px;
}
.section-badge {
display: inline-block;
background: var(--color-primary);
color: var(--color-black);
padding: 6px 16px;
border-radius: 20px;
font-size: 13px;
font-weight: 600;
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 16px;
}
.section-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 700;
}
.features-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
}
.feature-card {
padding: 40px 32px;
text-align: center;
}
.feature-icon {
font-size: 48px;
display: block;
margin-bottom: 20px;
}
.feature-title {
font-size: 20px;
font-weight: 700;
margin-bottom: 12px;
}
.feature-desc {
font-size: 14px;
color: var(--color-medium-gray);
line-height: 1.6;
}
.case-section {
background: var(--color-light-gray);
}
.case-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 48px;
text-align: center;
}
.case-card {
display: flex;
flex-direction: column;
align-items: center;
}
.case-number {
font-family: var(--font-heading);
font-size: 64px;
font-weight: 800;
color: var(--color-primary);
line-height: 1;
margin-bottom: 12px;
}
.case-label {
font-size: 16px;
color: var(--color-medium-gray);
text-transform: uppercase;
letter-spacing: 2px;
}
.cta-section {
padding: 100px 0;
}
.cta-content {
text-align: center;
}
.cta-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 800;
margin-bottom: 16px;
}
.cta-desc {
font-size: 18px;
margin-bottom: 40px;
opacity: 0.8;
}
.cta-actions {
display: flex;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
}
@media (max-width: 1024px) {
.features-grid {
grid-template-columns: repeat(2, 1fr);
}
.case-grid {
grid-template-columns: repeat(2, 1fr);
gap: 32px;
}
}
@media (max-width: 640px) {
.features-grid,
.case-grid {
grid-template-columns: 1fr;
}
.hero-actions,
.cta-actions {
flex-direction: column;
}
.btn-lg {
width: 100%;
justify-content: center;
}
}
</style>

View File

@@ -1,271 +0,0 @@
---
import Base from '../../layouts/Base.astro';
import Navigation from '../../components/Navigation.astro';
import Hero from '../../components/Hero.astro';
import Footer from '../../components/Footer.astro';
const services = [
{
icon: "🔍",
title: "Digital Audit",
desc: "วิเคราะห์สถานะดิจิทัลปัจจุบันของธุรกิจคุณอย่างละเอียด"
},
{
icon: "📋",
title: "Digital Strategy",
desc: "วางแผน digital transformation ที่เหมาะกับเป้าหมายธุรกิจ"
},
{
icon: "🛠️",
title: "Technology Selection",
desc: "แนะนำเทคโนโลยีที่เหมาะสมกับ budget และความต้องการ"
},
{
icon: "📐",
title: "System Architecture",
desc: "ออกแบบระบบที่ scalable และ maintainable"
},
{
icon: "🔧",
title: "Implementation Support",
desc: "ดูแลและให้คำปรึกษาตลอดการ implement"
},
{
icon: "📈",
title: "Performance Optimization",
desc: "ปรับปรุงประสิทธิภาพระบบให้ดีขึ้นอย่างต่อเนื่อง"
}
];
---
<Base title="Tech Consult | MoreminiMore">
<Navigation />
<!-- Hero Section -->
<Hero
title="Tech Consult"
subtitle="ให้คำปรึกษาด้านเทคโนโลยีเพื่อธุรกิจของคุณ วางแผน ออกแบบ และ implement ระบบที่เหมาะสม"
badge="บริการ"
image="/images/hero/tech-consult-hero.jpg"
theme="yellow"
showCTA={false}
variant="split"
size="compact"
/>
<!-- Features Section -->
<section class="section features-section">
<div class="container">
<div class="section-header">
<span class="section-badge">บริการของเรา</span>
<h2 class="section-title">เราให้คำปรึกษาอะไรบ้าง</h2>
</div>
<div class="features-grid">
{services.map((service, i) => (
<div class="feature-card card card-accent" style={`animation-delay: ${i * 0.1}s`}>
<span class="feature-icon">{service.icon}</span>
<h3 class="feature-title">{service.title}</h3>
<p class="feature-desc">{service.desc}</p>
</div>
))}
</div>
</div>
</section>
<!-- Process Section -->
<section class="section section-light process-section">
<div class="container">
<div class="section-header">
<span class="section-badge">กระบวนการ</span>
<h2 class="section-title">วิธีการทำงานของเรา</h2>
</div>
<div class="process-steps">
<div class="step">
<span class="step-num">01</span>
<h3 class="step-title">วิเคราะห์</h3>
<p class="step-desc">วิเคราะห์สถานะปัจจุบันและเป้าหมายของธุรกิจ</p>
</div>
<div class="step">
<span class="step-num">02</span>
<h3 class="step-title">วางแผน</h3>
<p class="step-desc">ออกแบบ roadmap และ timeline สำหรับ implementation</p>
</div>
<div class="step">
<span class="step-num">03</span>
<h3 class="step-title">ดำเนินการ</h3>
<p class="step-desc">implement ตามแผนที่วางไว้พร้อม support ตลอดเวลา</p>
</div>
<div class="step">
<span class="step-num">04</span>
<h3 class="step-title">ประเมินผล</h3>
<p class="step-desc">วัดผลและปรับปรุงอย่างต่อเนื่อง</p>
</div>
</div>
</div>
</section>
<!-- CTA Section -->
<section class="section section-primary cta-section">
<div class="container">
<div class="cta-content">
<h2 class="cta-title">ต้องการคำปรึกษาด้านเทคโนโลยี?</h2>
<p class="cta-desc">ปรึกษาฟรี! เราพร้อมรับฟังปัญหาและหาทางออกร่วมกัน</p>
<div class="cta-actions">
<a href="/contact" class="btn btn-secondary btn-lg">ติดต่อเรา</a>
<a href="tel:0809955945" class="btn btn-outline btn-lg">080-995-5945</a>
</div>
</div>
</div>
</section>
<Footer />
</Base>
<style>
.section-header {
text-align: center;
margin-bottom: 60px;
}
.section-badge {
display: inline-block;
background: var(--color-primary);
color: var(--color-black);
padding: 6px 16px;
border-radius: 20px;
font-size: 13px;
font-weight: 600;
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 16px;
}
.section-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 700;
}
.features-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
}
.feature-card {
padding: 40px 32px;
text-align: center;
}
.feature-icon {
font-size: 48px;
display: block;
margin-bottom: 20px;
}
.feature-title {
font-size: 20px;
font-weight: 700;
margin-bottom: 12px;
}
.feature-desc {
font-size: 14px;
color: var(--color-medium-gray);
line-height: 1.6;
}
.process-section {
background: var(--color-light-gray);
}
.process-steps {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 32px;
}
.step {
text-align: center;
padding: 32px;
background: var(--color-white);
border-radius: 16px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}
.step-num {
display: block;
font-family: var(--font-heading);
font-size: 48px;
font-weight: 800;
color: var(--color-primary);
margin-bottom: 16px;
}
.step-title {
font-size: 20px;
font-weight: 700;
margin-bottom: 8px;
}
.step-desc {
font-size: 14px;
color: var(--color-medium-gray);
line-height: 1.6;
}
.cta-section {
padding: 100px 0;
}
.cta-content {
text-align: center;
}
.cta-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 800;
margin-bottom: 16px;
}
.cta-desc {
font-size: 18px;
margin-bottom: 40px;
opacity: 0.8;
}
.cta-actions {
display: flex;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
}
@media (max-width: 1024px) {
.features-grid {
grid-template-columns: repeat(2, 1fr);
}
.process-steps {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 640px) {
.features-grid,
.process-steps {
grid-template-columns: 1fr;
}
.hero-actions,
.cta-actions {
flex-direction: column;
}
.btn-lg {
width: 100%;
justify-content: center;
}
}
</style>

View File

@@ -0,0 +1,221 @@
---
import Base from '../../layouts/Base.astro';
import Navigation from '../../components/Navigation.astro';
import Footer from '../../components/Footer.astro';
import PageHero from '../../components/PageHero.astro';
import ServiceCard from '../../components/ServiceCard.astro';
import { getCollection } from 'astro:content';
const services = await getCollection('services');
const techServices = services.filter(s => s.data.category === 'tech-consult');
const marketingServices = services.filter(s => s.data.category === 'marketing-consult');
// Map service slugs to images
const serviceImages: Record<string, string> = {
'automation': '/images/services/automation.jpg',
'ai-consult': '/images/services/ai-consult.jpg',
'marketing': '/images/services/marketing.jpg',
'webdev': '/images/services/webdev.jpg',
};
---
<Base title="บริการ | MoreminiMore - รับทำเว็บไซต์ SEO AI Chatbot">
<Navigation />
<PageHero
badge="บริการ"
title="บริการของเรา"
subtitle="ครบจบทุกโซลูชันด้านดิจิทัลสำหรับธุรกิจไทย"
/>
<section class="section">
<div class="container">
<!-- Tech Consult Category -->
<div class="category-section">
<div class="category-header">
<div class="category-icon">🔧</div>
<div class="category-info">
<span class="category-badge">Technology Consult</span>
<h2 class="category-title">ลดต้นทุนและเวลา</h2>
<p class="category-desc">บริการให้คำปรึกษาด้านเทคโนโลยีเพื่อเพิ่มประสิทธิภาพการทำงานและลดค่าใช้จ่ายในระยะยาว</p>
</div>
</div>
<div class="services-grid">
{techServices.map(s => (
<ServiceCard
title={s.data.title}
subtitle={s.data.subtitle}
image={serviceImages[s.slug] || '/images/services/default.jpg'}
link={`/services/${s.slug}`}
/>
))}
</div>
<div class="usp-box">
<div class="usp-icon">🎁</div>
<div class="usp-content">
<h4 class="usp-title">สิทธิพิเศษสำหรับลูกค้า Consult</h4>
<p class="usp-desc">ลูกค้าที่ใช้บริการ Technology Consult จะได้รับ Server ฟรีสำหรับ App และ AI (สำหรับการใช้งานปกติ) หากต้องการใช้งานหนักหรือ Resource-intensive จะมีค่าใช้จ่ายเพิ่มเติม</p>
</div>
</div>
</div>
<!-- Marketing Consult Category -->
<div class="category-section">
<div class="category-header">
<div class="category-icon">📈</div>
<div class="category-info">
<span class="category-badge">Marketing Consult</span>
<h2 class="category-title">เพิ่มยอดขาย</h2>
<p class="category-desc">บริการด้านการตลาดที่ช่วยให้ธุรกิจของคุณเข้าถึงลูกค้าได้มากขึ้นและเพิ่มยอดขายอย่างเป็นระบบ</p>
</div>
</div>
<div class="services-grid">
{marketingServices.map(s => (
<ServiceCard
title={s.data.title}
subtitle={s.data.subtitle}
image={serviceImages[s.slug] || '/images/services/default.jpg'}
link={`/services/${s.slug}`}
/>
))}
</div>
<div class="usp-box">
<div class="usp-icon">🎁</div>
<div class="usp-content">
<h4 class="usp-title">สิทธิพิเศษสำหรับลูกค้า Website</h4>
<p class="usp-desc">ลูกค้าที่ใช้ Server ของเราจะได้รับบริการแก้ไขและเพิ่มเนื้อหาเว็บไซต์ฟรี! จ่ายเฉพาะเมื่อต้องการ Redesign ทั้งหมด หรือ Upgrade ฟีเจอร์ใหญ่ เช่น เพิ่มระบบ E-commerce</p>
</div>
</div>
</div>
</div>
</section>
<!-- CTA Section -->
<section class="section section-primary cta">
<div class="container">
<div class="cta-content">
<h2 class="cta-title">พร้อมเริ่มต้นวันนี้?</h2>
<p class="cta-desc">ปรึกษาฟรี! เราพร้อมช่วยวิเคราะห์และออกแบบโซลูชันที่เหมาะกับคุณ</p>
<div class="cta-actions">
<a href="/contact" class="btn btn-dark btn-lg">ติดต่อเรา</a>
<a href="tel:0809955945" class="btn btn-outline-dark btn-lg">080-995-5945</a>
</div>
</div>
</div>
</section>
<Footer />
</Base>
<style>
.category-section {
margin-bottom: 80px;
}
.category-section:last-of-type { margin-bottom: 0; }
.category-header {
display: flex;
align-items: flex-start;
gap: 24px;
margin-bottom: 40px;
padding: 32px;
background: var(--color-gray-100);
border-radius: 20px;
}
.category-icon {
font-size: 48px;
flex-shrink: 0;
}
.category-info { flex: 1; }
.category-badge {
display: inline-block;
background: var(--color-primary);
color: var(--color-black);
padding: 4px 12px;
border-radius: 12px;
font-size: 12px;
font-weight: 600;
text-transform: uppercase;
margin-bottom: 8px;
}
.category-title {
font-size: 32px;
font-weight: 700;
color: var(--color-dark);
margin-bottom: 8px;
}
.category-desc {
font-size: 16px;
color: var(--color-gray-600);
line-height: 1.6;
}
.services-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 24px;
margin-bottom: 32px;
}
.usp-box {
display: flex;
align-items: flex-start;
gap: 20px;
padding: 24px;
background: linear-gradient(135deg, var(--color-primary) 0%, #ffe066 100%);
border-radius: 16px;
}
.usp-icon { font-size: 32px; flex-shrink: 0; }
.usp-title {
font-size: 18px;
font-weight: 700;
color: var(--color-black);
margin-bottom: 8px;
}
.usp-desc {
font-size: 14px;
color: rgba(0,0,0,0.8);
line-height: 1.6;
}
.section-primary { background: var(--color-primary); }
.cta-content { text-align: center; }
.cta-title {
font-size: clamp(28px, 4vw, 42px);
font-weight: 800;
margin-bottom: 16px;
color: var(--color-black);
}
.cta-desc {
font-size: 18px;
color: rgba(0,0,0,0.7);
margin-bottom: 32px;
max-width: 500px;
margin-left: auto;
margin-right: auto;
}
.cta-actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.btn-outline-dark {
background: transparent;
color: var(--color-black);
border: 2px solid var(--color-black);
}
.btn-outline-dark:hover { background: var(--color-black); color: var(--color-white); }
.btn-dark {
background: var(--color-dark);
color: var(--color-white);
}
.btn-dark:hover { background: var(--color-dark-light); }
.btn-lg { padding: 16px 36px; font-size: 16px; font-weight: 600; text-transform: uppercase; letter-spacing: 2px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
@media (max-width: 1024px) {
.services-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
.category-header { flex-direction: column; }
.cta-actions { flex-direction: column; }
.btn-lg { width: 100%; }
}
</style>

View File

@@ -1,262 +0,0 @@
---
import Base from '../../layouts/Base.astro';
import Navigation from '../../components/Navigation.astro';
import Hero from '../../components/Hero.astro';
import Footer from '../../components/Footer.astro';
const features = [
{
icon: "📧",
title: "Email Automation",
desc: "ส่ง email อัตโนมัติเมื่อ trigger ตรงกับเงื่อนไขที่กำหนด"
},
{
icon: "💬",
title: "Chatbot Integration",
desc: "เชื่อมต่อ chatbot กับระบบ CRM เพื่อเก็บข้อมูลลูกค้า"
},
{
icon: "📱",
title: "SMS/Line Automation",
desc: "ส่ง SMS หรือ LINE message อัตโนมัติตาม timeline"
},
{
icon: "📊",
title: "Analytics Dashboard",
desc: "ติดตามผลแคมเปญและวัด ROI ได้แบบ real-time"
},
{
icon: "🎯",
title: "Lead Scoring",
desc: "ให้คะแนน leads ตามพฤติกรรมเพื่อจัดลำดับความสำคัญ"
},
{
icon: "🔄",
title: "Workflow Automation",
desc: "สร้าง workflow อัตโนมัติสำหรับงานที่ทำซ้ำๆ"
}
];
---
<Base title="Marketing Automation | MoreminiMore">
<Navigation />
<!-- Hero Section -->
<Hero
title="Marketing Automation"
subtitle="เพิ่มประสิทธิภาพการตลาดและลดต้นทุนด้วยระบบอัตโนมัติ ประหยัดเวลา เพิ่ม conversion วัดผลได้"
badge="บริการ"
image="/images/hero/marketing-automation-hero.jpg"
theme="yellow"
showCTA={false}
variant="split"
size="compact"
/>
<!-- Features Section -->
<section class="section features-section">
<div class="container">
<div class="section-header">
<span class="section-badge">คุณสมบัติ</span>
<h2 class="section-title">ระบบที่เราสร้างให้คุณ</h2>
</div>
<div class="features-grid">
{features.map((feature, i) => (
<div class="feature-card card card-accent" style={`animation-delay: ${i * 0.1}s`}>
<span class="feature-icon">{feature.icon}</span>
<h3 class="feature-title">{feature.title}</h3>
<p class="feature-desc">{feature.desc}</p>
</div>
))}
</div>
</div>
</section>
<!-- Benefits Section -->
<section class="section section-light benefits-section">
<div class="container">
<div class="section-header">
<span class="section-badge">ประโยชน์</span>
<h2 class="section-title">ทำไมต้องทำ Marketing Automation</h2>
</div>
<div class="benefits-grid">
<div class="benefit-item">
<span class="benefit-number">50%</span>
<span class="benefit-label">ลดเวลาทำงาน</span>
</div>
<div class="benefit-item">
<span class="benefit-number">3x</span>
<span class="benefit-label">เพิ่ม conversion</span>
</div>
<div class="benefit-item">
<span class="benefit-number">24/7</span>
<span class="benefit-label">ให้บริการลูกค้า</span>
</div>
<div class="benefit-item">
<span class="benefit-number">100%</span>
<span class="benefit-label">วัดผลได้</span>
</div>
</div>
</div>
</section>
<!-- CTA Section -->
<section class="section section-primary cta-section">
<div class="container">
<div class="cta-content">
<h2 class="cta-title">พร้อมเพิ่มประสิทธิภาพการตลาด?</h2>
<p class="cta-desc">ปรึกษาฟรี! เราพร้อมวิเคราะห์และออกแบบระบบที่เหมาะกับธุรกิจของคุณ</p>
<div class="cta-actions">
<a href="/contact" class="btn btn-secondary btn-lg">ติดต่อเรา</a>
<a href="tel:0809955945" class="btn btn-outline btn-lg">080-995-5945</a>
</div>
</div>
</div>
</section>
<Footer />
</Base>
<style>
.section-header {
text-align: center;
margin-bottom: 60px;
}
.section-badge {
display: inline-block;
background: var(--color-primary);
color: var(--color-black);
padding: 6px 16px;
border-radius: 20px;
font-size: 13px;
font-weight: 600;
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 16px;
}
.section-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 700;
}
.features-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
}
.feature-card {
padding: 40px 32px;
text-align: center;
}
.feature-icon {
font-size: 48px;
display: block;
margin-bottom: 20px;
}
.feature-title {
font-size: 20px;
font-weight: 700;
margin-bottom: 12px;
}
.feature-desc {
font-size: 14px;
color: var(--color-medium-gray);
line-height: 1.6;
}
.benefits-section {
background: var(--color-light-gray);
}
.benefits-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 48px;
text-align: center;
}
.benefit-item {
display: flex;
flex-direction: column;
align-items: center;
}
.benefit-number {
font-family: var(--font-heading);
font-size: 64px;
font-weight: 800;
color: var(--color-primary);
line-height: 1;
margin-bottom: 12px;
}
.benefit-label {
font-size: 16px;
color: var(--color-medium-gray);
text-transform: uppercase;
letter-spacing: 2px;
}
.cta-section {
padding: 100px 0;
}
.cta-content {
text-align: center;
}
.cta-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 800;
margin-bottom: 16px;
}
.cta-desc {
font-size: 18px;
margin-bottom: 40px;
opacity: 0.8;
}
.cta-actions {
display: flex;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
}
@media (max-width: 1024px) {
.features-grid {
grid-template-columns: repeat(2, 1fr);
}
.benefits-grid {
grid-template-columns: repeat(2, 1fr);
gap: 32px;
}
}
@media (max-width: 640px) {
.features-grid,
.benefits-grid {
grid-template-columns: 1fr;
}
.hero-actions,
.cta-actions {
flex-direction: column;
}
.btn-lg {
width: 100%;
justify-content: center;
}
}
</style>

View File

@@ -1,283 +0,0 @@
---
import Base from '../../layouts/Base.astro';
import Navigation from '../../components/Navigation.astro';
import Hero from '../../components/Hero.astro';
import Footer from '../../components/Footer.astro';
const features = [
{
icon: "⚡",
title: "เร็วสุดใน class",
desc: "โหลดเร็ว เพิ่ม conversion และ SEO ranking"
},
{
icon: "📱",
title: "Responsive ทุก device",
desc: "แสดงผลได้ดีบน mobile tablet และ desktop"
},
{
icon: "🎨",
title: "Design สวยงาม",
desc: "ออกแบบ UI/UX ที่ดึงดูดและใช้งานง่าย"
},
{
icon: "🔒",
title: "ปลอดภัย",
desc: "Security ระดับสูง ป้องกันการโจมตี"
},
{
icon: "SEO",
title: "SEO Optimized",
desc: "ออกแบบมาเพื่อให้ Google ชอบ"
},
{
icon: "📊",
title: "Analytics ในตัว",
desc: "ติดตามผู้เข้าชมและวัดผลได้"
}
];
---
<Base title="พัฒนาเว็บไซต์ | MoreminiMore">
<Navigation />
<!-- Hero Section -->
<Hero
title="พัฒนาเว็บไซต์"
subtitle="สร้างเว็บไซต์ที่ทันสมัย รวดเร็ว และตอบสนองความต้องการของลูกค้าของคุณ ด้วยเทคโนโลยีล่าสุดและ design ที่สวยงาม"
badge="บริการ"
image="/images/hero/web-development-hero.jpg"
theme="yellow"
showCTA={false}
variant="split"
size="compact"
/>
<!-- Features Section -->
<section class="section features-section">
<div class="container">
<div class="section-header">
<span class="section-badge">คุณสมบัติ</span>
<h2 class="section-title">ทำไมต้องเลือกเรา</h2>
</div>
<div class="features-grid">
{features.map((feature, i) => (
<div class="feature-card card card-accent" style={`animation-delay: ${i * 0.1}s`}>
<span class="feature-icon">{feature.icon}</span>
<h3 class="feature-title">{feature.title}</h3>
<p class="feature-desc">{feature.desc}</p>
</div>
))}
</div>
</div>
</section>
<!-- Services List -->
<section class="section section-light services-list-section">
<div class="container">
<div class="section-header">
<span class="section-badge">บริการของเรา</span>
<h2 class="section-title">เราให้บริการอะไรบ้าง</h2>
</div>
<div class="services-list">
<div class="service-item">
<span class="service-num">01</span>
<div class="service-content">
<h3>Landing Page</h3>
<p>สร้าง landing page ที่ออกแบบมาเพื่อ convert ผู้เข้าชมเป็นลูกค้า ด้วย design ที่ดึงดูดและ content ที่ตรงใจ</p>
</div>
</div>
<div class="service-item">
<span class="service-num">02</span>
<div class="service-content">
<h3>เว็บไซต์องค์กร</h3>
<p>พัฒนาเว็บไซต์สำหรับองค์กรที่ต้องการ professional online presence พร้อมระบบจัดการเนื้อหา</p>
</div>
</div>
<div class="service-item">
<span class="service-num">03</span>
<div class="service-content">
<h3>E-commerce</h3>
<p>สร้างร้านค้าออนไลน์ที่สมบูรณ์แบบ รองรับการชำระเงิน จัดส่งสินค้า และ inventory management</p>
</div>
</div>
<div class="service-item">
<span class="service-num">04</span>
<div class="service-content">
<h3>Web Application</h3>
<p>พัฒนา web application ที่ซับซ้อนตามความต้องการของธุรกิจ ไม่ว่าจะเป็นระบบจอง ระบบขาย หรือระบบ management</p>
</div>
</div>
</div>
</div>
</section>
<!-- CTA Section -->
<section class="section section-primary cta-section">
<div class="container">
<div class="cta-content">
<h2 class="cta-title">พร้อมเริ่มโปรเจกต์เว็บไซต์?</h2>
<p class="cta-desc">ปรึกษาฟรี! เราพร้อมช่วยวิเคราะห์และออกแบบเว็บไซต์ที่เหมาะกับธุรกิจของคุณ</p>
<div class="cta-actions">
<a href="/contact" class="btn btn-secondary btn-lg">ติดต่อเรา</a>
<a href="tel:0809955945" class="btn btn-outline btn-lg">080-995-5945</a>
</div>
</div>
</div>
</section>
<Footer />
</Base>
<style>
.section-header {
text-align: center;
margin-bottom: 60px;
}
.section-badge {
display: inline-block;
background: var(--color-primary);
color: var(--color-black);
padding: 6px 16px;
border-radius: 20px;
font-size: 13px;
font-weight: 600;
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 16px;
}
.section-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 700;
}
.features-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
}
.feature-card {
padding: 40px 32px;
text-align: center;
}
.feature-icon {
font-size: 48px;
display: block;
margin-bottom: 20px;
}
.feature-title {
font-size: 20px;
font-weight: 700;
margin-bottom: 12px;
}
.feature-desc {
font-size: 14px;
color: var(--color-medium-gray);
line-height: 1.6;
}
.services-list-section {
background: var(--color-light-gray);
}
.services-list {
max-width: 800px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: 24px;
}
.service-item {
display: flex;
gap: 32px;
padding: 32px;
background: var(--color-white);
border-radius: 16px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
align-items: flex-start;
}
.service-num {
font-family: var(--font-heading);
font-size: 48px;
font-weight: 800;
color: var(--color-primary);
line-height: 1;
flex-shrink: 0;
}
.service-content h3 {
font-size: 20px;
font-weight: 700;
margin-bottom: 8px;
}
.service-content p {
font-size: 14px;
color: var(--color-medium-gray);
line-height: 1.6;
}
.cta-section {
padding: 100px 0;
}
.cta-content {
text-align: center;
}
.cta-title {
font-size: clamp(32px, 5vw, 48px);
font-weight: 800;
margin-bottom: 16px;
}
.cta-desc {
font-size: 18px;
margin-bottom: 40px;
opacity: 0.8;
}
.cta-actions {
display: flex;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
}
@media (max-width: 1024px) {
.features-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 640px) {
.features-grid {
grid-template-columns: 1fr;
}
.service-item {
flex-direction: column;
gap: 16px;
}
.hero-actions,
.cta-actions {
flex-direction: column;
}
.btn-lg {
width: 100%;
justify-content: center;
}
}
</style>