* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; color: #333; line-height: 1.6; }
.container { width: 1100px; margin: 0 auto; }

header { background: white; box-shadow: 0 2px 10px rgba(0,0,0,0.1); position: sticky; top: 0; z-index: 100; }
header .container { display: flex; justify-content: space-between; align-items: center; padding: 20px 0; }
header .logo { font-size: 24px; font-weight: bold; color: #667eea; }
header nav ul { display: flex; list-style: none; }
header nav ul li { margin-left: 30px; }
header nav ul li a { text-decoration: none; color: #333; font-weight: 500; transition: color 0.3s; }
header nav ul li a:hover { color: #667eea; }

.hero { background: linear-gradient(135deg, rgba(102, 126, 234, 0.95) 0%, rgba(118, 75, 162, 0.95) 100%); color: white; padding: 120px 0; text-align: center; background-image: url('../images/hero-bg.jpg'); background-size: cover; background-position: center; background-blend-mode: overlay; }
.hero h1 { font-size: 48px; margin-bottom: 20px; }
.hero p { font-size: 20px; margin-bottom: 40px; opacity: 0.9; }
.hero .btn { display: inline-block; padding: 15px 40px; background: white; color: #667eea; text-decoration: none; border-radius: 6px; font-weight: 600; transition: transform 0.3s; }
.hero .btn:hover { transform: translateY(-3px); }

.section { padding: 80px 0; }
.section-title { text-align: center; margin-bottom: 50px; }
.section-title h2 { font-size: 36px; margin-bottom: 15px; }
.section-title p { color: #666; }

.services-bg { background: #f8f9fa; background-image: url('../images/services-bg.jpg'); background-size: cover; background-position: center; }

.news-bg { background: #f8f9fa; background-image: url('../images/news-bg.jpg'); background-size: cover; background-position: center; }

.cases-bg { background: white; background-image: url('../images/cases-bg.jpg'); background-size: cover; background-position: center; }

.services-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
.service-card { background: white; padding: 30px; border-radius: 10px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); text-align: center; transition: transform 0.3s; position: relative; overflow: hidden; }
.service-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, #667eea, #764ba2); }
.service-card:hover { transform: translateY(-10px); box-shadow: 0 10px 30px rgba(102, 126, 234, 0.2); }
.service-card .icon { font-size: 48px; margin-bottom: 20px; color: #667eea; }
.service-card h3 { font-size: 20px; margin-bottom: 15px; }
.service-card p { color: #666; font-size: 14px; }

.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.news-card { background: white; border-radius: 10px; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
.news-card img { width: 100%; height: 200px; object-fit: cover; }
.news-card .content { padding: 25px; }
.news-card h3 { font-size: 18px; margin-bottom: 10px; }
.news-card p { color: #666; font-size: 14px; margin-bottom: 15px; }
.news-card .date { color: #999; font-size: 12px; }

.cases-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; }
.case-card { display: flex; background: white; border-radius: 10px; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
.case-card img { width: 40%; object-fit: cover; }
.case-card .content { padding: 30px; flex: 1; }
.case-card h3 { font-size: 20px; margin-bottom: 10px; }
.case-card .category { color: #667eea; font-size: 14px; margin-bottom: 10px; }
.case-card p { color: #666; font-size: 14px; }

.about-section { background: #f8f9fa; background-image: url('../images/about-bg.jpg'); background-size: cover; background-position: center; background-attachment: fixed; }
.about-content { display: flex; gap: 50px; }
.about-content .image { flex: 1; }
.about-content .image img { width: 100%; border-radius: 10px; }
.about-content .text { flex: 1; }
.about-content .text h3 { font-size: 28px; margin-bottom: 20px; }
.about-content .text p { color: #666; margin-bottom: 20px; }
.about-content .features { list-style: none; }
.about-content .features li { padding: 10px 0; border-bottom: 1px solid #eee; }
.about-content .features li::before { content: '✓'; color: #667eea; margin-right: 10px; }

.contact-section { background: #f8f9fa; }
.contact-content { display: flex; gap: 50px; }
.contact-info { flex: 1; }
.contact-info h3 { font-size: 24px; margin-bottom: 30px; }
.contact-info .info-item { display: flex; align-items: center; margin-bottom: 20px; }
.contact-info .info-item .icon { font-size: 24px; color: #667eea; margin-right: 15px; }
.contact-info .info-item .text { color: #666; }
.contact-form { flex: 1; background: white; padding: 30px; border-radius: 10px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
.contact-form h3 { font-size: 20px; margin-bottom: 20px; }
.contact-form .form-group { margin-bottom: 20px; }
.contact-form .form-group label { display: block; margin-bottom: 8px; color: #666; }
.contact-form .form-group input, .contact-form .form-group textarea { width: 100%; padding: 12px; border: 1px solid #ddd; border-radius: 6px; font-size: 14px; }
.contact-form .form-group textarea { height: 120px; resize: vertical; }
.contact-form .btn { width: 100%; padding: 15px; background: #667eea; color: white; border: none; border-radius: 6px; font-size: 16px; cursor: pointer; }

footer { background: #2c3e50; color: white; padding: 60px 0; }
footer .footer-content { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
footer .footer-section h4 { font-size: 18px; margin-bottom: 20px; }
footer .footer-section ul { list-style: none; }
footer .footer-section ul li { margin-bottom: 10px; }
footer .footer-section ul li a { color: #bdc3c7; text-decoration: none; }
footer .footer-section ul li a:hover { color: white; }
footer .footer-bottom { text-align: center; padding-top: 30px; border-top: 1px solid #34495e; color: #bdc3c7; }

.page-header { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 60px 0; text-align: center; }
.page-header h1 { font-size: 36px; }

.news-detail { max-width: 800px; margin: 0 auto; padding: 40px 0; }
.news-detail img { width: 100%; height: 400px; object-fit: cover; border-radius: 10px; margin-bottom: 30px; }
.news-detail h1 { font-size: 32px; margin-bottom: 20px; }
.news-detail .meta { color: #666; margin-bottom: 30px; }
.news-detail .content { color: #444; line-height: 1.8; }

.service-detail { max-width: 1000px; margin: 0 auto; padding: 40px 0; }
.service-detail h1 { font-size: 32px; margin-bottom: 20px; }
.service-detail .summary { font-size: 18px; color: #666; margin-bottom: 30px; }
.service-detail .description { color: #444; line-height: 1.8; margin-bottom: 30px; }
.service-detail .features { background: #f8f9fa; padding: 30px; border-radius: 10px; }
.service-detail .features h3 { margin-bottom: 20px; }
.service-detail .features ul { list-style: none; }
.service-detail .features li { padding: 10px 0; border-bottom: 1px solid #ddd; }
.service-detail .features li::before { content: '✓'; color: #667eea; margin-right: 10px; }

.case-detail { max-width: 1000px; margin: 0 auto; padding: 40px 0; }
.case-detail img { width: 100%; height: 400px; object-fit: cover; border-radius: 10px; margin-bottom: 30px; }
.case-detail h1 { font-size: 32px; margin-bottom: 10px; }
.case-detail .category { color: #667eea; font-size: 16px; margin-bottom: 10px; }
.case-detail .client { color: #666; margin-bottom: 30px; }
.case-detail .content { color: #444; line-height: 1.8; }

.pagination { text-align: center; margin-top: 30px; }
.pagination a { display: inline-block; padding: 10px 15px; border: 1px solid #ddd; text-decoration: none; color: #333; margin: 0 5px; border-radius: 6px; }
.pagination a.active { background: #667eea; color: white; border-color: #667eea; }