diff --git a/app/freelance/page.tsx b/app/freelance/page.tsx index e6d8184..b6324bd 100644 --- a/app/freelance/page.tsx +++ b/app/freelance/page.tsx @@ -242,7 +242,7 @@ export default function FreelancePage() {
쟁토리 (박재오)
대기업 백엔드 7년 · Python / Java / Next.js
-
+
{['Python', 'Java', 'Next.js', 'Docker'].map(t => ( {t} ))} @@ -342,7 +342,7 @@ export default function FreelancePage() {

숫자보다 실제 말이 더 정직합니다

-
+
{testimonials.map((t) => (
{/* 가격 + 기간 */} -
- {s.from} +
+ {s.from} {s.duration}
diff --git a/app/services/website/page.tsx b/app/services/website/page.tsx index 2e3c228..b41ad73 100644 --- a/app/services/website/page.tsx +++ b/app/services/website/page.tsx @@ -507,10 +507,6 @@ export default function WebsiteServicePage() { from { background-position: 0 0; } to { background-position: 48px 48px; } } - @keyframes ws-marquee { - from { transform: translateX(0); } - to { transform: translateX(-50%); } - } @keyframes ws-glow { 0%,100% { opacity: 0.5; } 50% { opacity: 1; } @@ -548,7 +544,20 @@ export default function WebsiteServicePage() { box-shadow: 0 16px 48px rgba(0,0,0,0.3); } - .ws-marquee-track { animation: ws-marquee 30s linear infinite; display: flex; } + /* 모바일 반응형 */ + @media (max-width: 640px) { + .ws-portfolio-grid { grid-template-columns: 1fr !important; } + .ws-process-steps { flex-direction: column !important; align-items: stretch !important; } + .ws-process-divider { display: none !important; } + .ws-pricing-grid { grid-template-columns: 1fr !important; } + .ws-hero-stats { gap: 0 !important; flex-wrap: nowrap !important; } + .ws-hero-stats > div { padding: 0 16px !important; } + .ws-cta-box { padding: 36px 24px !important; } + } + @media (max-width: 480px) { + .ws-hero-buttons { flex-direction: column !important; align-items: stretch !important; } + .ws-hero-buttons a, .ws-hero-buttons button { text-align: center !important; justify-content: center !important; } + } /* scrollbar */ ::-webkit-scrollbar { width: 4px; } @@ -580,16 +589,16 @@ export default function WebsiteServicePage() { color: '#ffffff', wordBreak: 'keep-all', }}> - 홈페이지 맡겼다가
연락 끊긴 경험, 여기선 없습니다 + 홈페이지·웹앱·앱 개발,
연락 끊기는 일 없습니다

- 계약서 작성 → 중간 보고 → 소스코드 인도까지 단계마다 증거를 남깁니다.
- 납기 지연 시 하루당 10만원 감면 — 그래서 안 늦습니다. + 소개 사이트부터 SaaS·쇼핑몰·모바일웹까지 — 계약서부터 소스코드 인도까지
+ 단계마다 증거를 남깁니다. 납기 지연 시 하루당 10만원 감면.

-
+
{/* Stats */} -
+
{[ { num: '3~5일', label: '최단 납품 (스타터)' }, { num: '20만원~', label: '시작 가격' }, @@ -638,7 +647,7 @@ export default function WebsiteServicePage() { {/* ── Feature tags ── */}
- {['반응형 디자인', 'SEO 최적화', '빠른 납품', '계약서 작성', '소스코드 제공', '1년 AS 보장', '도메인 배포'].map((t) => ( + {['반응형 디자인', 'SEO 최적화', '웹앱·모바일웹', '계약서 작성', '소스코드 제공', '납기 패널티 보장', '도메인 배포'].map((t) => ( {t} @@ -694,7 +703,7 @@ export default function WebsiteServicePage() { 카드를 클릭하면 실제 완성 화면을 미리 확인할 수 있습니다

-
+
{samples.map((s) => (
@@ -748,7 +757,7 @@ export default function WebsiteServicePage() {

투명하고 체계적인 5단계로 진행됩니다

-
+
{processSteps.map((p, i) => (
{i < processSteps.length - 1 && ( -
+
)}
))} @@ -785,7 +794,7 @@ export default function WebsiteServicePage() {

프로젝트 규모에 맞는 플랜을 선택하세요

-
+
{plans.map((plan) => (
-
-
-

- 지금 바로 시작하세요 +

+ 내일도 고민만 하실 건가요?

-

- 무료 상담은 24시간 이내 답변드립니다.
- 어떤 규모의 프로젝트든 환영합니다. +

+ 상담 신청 후 24시간 이내 답변드립니다.
+ 소개 사이트·웹앱·쇼핑몰·모바일앱, 규모 무관하게 검토해드립니다.

{ (e.currentTarget as HTMLElement).style.transform = 'translateY(-2px)'; (e.currentTarget as HTMLElement).style.boxShadow = '0 16px 48px rgba(99,102,241,0.6)'; }} - onMouseLeave={e => { (e.currentTarget as HTMLElement).style.transform = ''; (e.currentTarget as HTMLElement).style.boxShadow = '0 8px 32px rgba(99,102,241,0.5)'; }}> + onMouseEnter={e => { (e.currentTarget as HTMLElement).style.transform = 'translateY(-2px)'; (e.currentTarget as HTMLElement).style.boxShadow = '0 16px 40px rgba(99,102,241,0.5)'; }} + onMouseLeave={e => { (e.currentTarget as HTMLElement).style.transform = ''; (e.currentTarget as HTMLElement).style.boxShadow = '0 8px 24px rgba(99,102,241,0.4)'; }}> 무료 상담 신청하기 →
@@ -921,7 +928,7 @@ export default function WebsiteServicePage() { style={{ position: 'fixed', bottom: '5.5rem', right: '2rem', zIndex: 200, width: 48, height: 48, borderRadius: '50%', - background: 'linear-gradient(135deg, #6366f1, #818cf8)', + background: '#6366f1', border: 'none', cursor: 'pointer', display: 'flex', alignItems: 'center', justifyContent: 'center', boxShadow: '0 8px 32px rgba(99,102,241,0.4)',