/* ======================================== Services 페이지 전용 스타일 ======================================== */ /* 페이지 헤더 */ .page-header { background: var(--gradient-main); color: var(--text-white); padding: var(--spacing-3xl) 0; text-align: center; } .page-header h1 { font-size: var(--font-5xl); margin-bottom: var(--spacing-md); } .page-header p { font-size: var(--font-xl); opacity: 0.95; } /* 서비스 테이블 */ .services-table-wrapper { margin-bottom: var(--spacing-2xl); } .services-table-wrapper .card { overflow: hidden; } .services-table-wrapper h3 { margin-bottom: var(--spacing-lg); font-size: var(--font-2xl); color: var(--text-primary); } .table-responsive { overflow-x: auto; border-radius: var(--border-radius-sm); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .services-table { width: 100%; border-collapse: collapse; background: var(--bg-white); } .services-table th, .services-table td { padding: var(--spacing-lg); text-align: left; border-bottom: 1px solid #e5e7eb; } .services-table th { background: var(--bg-light); font-weight: 700; color: var(--text-primary); text-align: center; } .services-table tbody tr:hover { background: rgba(255, 136, 0, 0.02); } .main-service { background: linear-gradient(135deg, rgba(255, 136, 0, 0.05), rgba(255, 153, 51, 0.05)); } .service-name { display: flex; align-items: center; gap: var(--spacing-sm); } .service-icon { font-size: 1.5rem; } .service-features { list-style: none; padding: 0; } .service-features li { margin-bottom: var(--spacing-sm); padding-left: var(--spacing-lg); position: relative; } .service-features li::before { content: '•'; color: var(--primary-color); position: absolute; left: 0; font-weight: bold; } .pricing { text-align: center; min-width: 180px; } .price-main { font-size: var(--font-xl); font-weight: 700; color: var(--primary-color); margin-bottom: var(--spacing-xs); } .price-sub { font-size: var(--font-sm); color: var(--text-secondary); margin-bottom: var(--spacing-sm); } .price-detail { font-size: var(--font-sm); line-height: 1.5; } /* 대관 절차 */ .process-flow { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: var(--spacing-lg); margin: var(--spacing-xl) 0; padding: var(--spacing-xl); background: var(--bg-light); border-radius: var(--border-radius); } .process-step { display: flex; flex-direction: column; align-items: center; text-align: center; flex: 1; min-width: 150px; } .step-number { width: 50px; height: 50px; border-radius: 50%; background: var(--gradient-main); color: var(--text-white); display: flex; align-items: center; justify-content: center; font-size: var(--font-xl); font-weight: 700; margin-bottom: var(--spacing-md); } .step-content h4 { font-size: var(--font-lg); margin-bottom: var(--spacing-sm); color: var(--text-primary); } .step-content p { font-size: var(--font-sm); color: var(--text-secondary); } .process-arrow { font-size: var(--font-2xl); color: var(--primary-color); font-weight: bold; } /* 예약 버튼 */ .booking-buttons { display: flex; gap: var(--spacing-md); justify-content: center; margin: var(--spacing-xl) 0 var(--spacing-sm); flex-wrap: wrap; } .booking-note { text-align: center; font-size: var(--font-sm); color: var(--text-secondary); margin-bottom: var(--spacing-xl); } /* 이메일 양식 */ .email-form { margin-top: var(--spacing-2xl); padding: var(--spacing-xl); background: var(--bg-light); border-radius: var(--border-radius); border: 2px solid var(--primary-color); } .email-form h4 { color: var(--primary-color); margin-bottom: var(--spacing-md); font-size: var(--font-xl); } .email-template { background: var(--bg-white); padding: var(--spacing-xl); border-radius: var(--border-radius-sm); margin: var(--spacing-lg) 0; border: 1px solid #e5e7eb; } .email-field { margin-bottom: var(--spacing-md); font-size: var(--font-base); word-break: break-all; } .form-section { margin-bottom: var(--spacing-xl); } .form-section h5 { color: var(--text-primary); margin-bottom: var(--spacing-sm); font-size: var(--font-base); font-weight: 600; } .form-help { font-size: var(--font-sm); color: var(--text-secondary); margin-bottom: var(--spacing-sm); line-height: 1.4; } .form-placeholder { background: #f8f9fa; padding: var(--spacing-md); border-radius: var(--border-radius-sm); border: 1px dashed #d1d5db; font-family: monospace; font-size: var(--font-sm); color: var(--text-secondary); } .email-send { text-align: center; margin-top: var(--spacing-xl); } /* 정보 리스트 */ .info-list { list-style: none; padding: 0; } .info-list li { margin-bottom: var(--spacing-md); padding-left: var(--spacing-lg); position: relative; line-height: 1.6; } .info-list li::before { content: '✓'; color: var(--primary-color); position: absolute; left: 0; font-weight: bold; } /* 환불 테이블 */ .refund-table { width: 100%; border-collapse: collapse; background: var(--bg-white); } .refund-table th, .refund-table td { padding: var(--spacing-md); text-align: center; border-bottom: 1px solid #e5e7eb; } .refund-table th { background: var(--bg-light); font-weight: 600; color: var(--text-primary); } .refund-100 { color: #10b981; font-weight: 600; } .refund-70 { color: #f59e0b; font-weight: 600; } .refund-50 { color: #f97316; font-weight: 600; } .refund-0 { color: #ef4444; font-weight: 600; } /* 장비 그리드 */ .equipment-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: var(--spacing-xl); margin-top: var(--spacing-2xl); } .equipment-card { text-align: center; padding: var(--spacing-2xl); background: var(--bg-white); border-radius: var(--border-radius); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08); transition: var(--transition); } .equipment-card:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12); } .equipment-icon { font-size: 3rem; margin-bottom: var(--spacing-lg); } .equipment-card h3 { font-size: var(--font-xl); margin-bottom: var(--spacing-md); color: var(--text-primary); } .equipment-card p { color: var(--text-secondary); line-height: 1.6; } /* 그리드 레이아웃 */ .grid { display: grid; gap: var(--spacing-xl); margin: var(--spacing-xl) 0; } .grid-2 { grid-template-columns: 1fr 1fr; } .grid-3 { grid-template-columns: repeat(3, 1fr); } .card { background: var(--bg-white); padding: var(--spacing-2xl); border-radius: var(--border-radius); box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08); margin-bottom: var(--spacing-xl); } .card:last-child { margin-bottom: 0; } .card h3 { color: var(--text-primary); margin-bottom: var(--spacing-lg); font-size: var(--font-xl); } /* CTA 섹션 */ .cta-section { background: var(--gradient-warm); padding: var(--spacing-3xl) 0; } .cta-section h2 { font-size: var(--font-4xl); margin-bottom: var(--spacing-md); color: var(--text-primary); } .cta-section p { font-size: var(--font-xl); margin-bottom: var(--spacing-2xl); color: var(--text-secondary); } .cta-buttons { display: flex; gap: var(--spacing-md); justify-content: center; flex-wrap: wrap; } .cta-section .btn-outline { border-color: var(--primary-color); color: var(--primary-color); } .cta-section .btn-outline:hover { background: var(--primary-color); color: var(--text-white); } /* 반응형 디자인 */ @media (max-width: 768px) { .page-header h1 { font-size: var(--font-3xl); } .page-header p { font-size: var(--font-base); } .services-table th, .services-table td { padding: var(--spacing-md); font-size: var(--font-sm); } .process-flow { flex-direction: column; } .process-arrow { transform: rotate(90deg); } .booking-buttons { flex-direction: column; align-items: center; } .booking-buttons .btn { width: 100%; max-width: 300px; } .equipment-grid { grid-template-columns: 1fr; } .grid-2, .grid-3 { grid-template-columns: 1fr; gap: var(--spacing-lg); } .card { margin-bottom: var(--spacing-lg); padding: var(--spacing-xl); } } @media (max-width: 480px) { .services-table { font-size: var(--font-xs); } .pricing { min-width: 120px; } .price-main { font-size: var(--font-base); } .process-step { min-width: 120px; } .step-number { width: 40px; height: 40px; font-size: var(--font-base); } }