.hero{text-align:center;padding:60px 20px 40px}
.hero h1{font-size:2.25rem;margin-bottom:12px;background:linear-gradient(135deg,var(--primary),#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero p{color:var(--text2);font-size:1.1rem;max-width:600px;margin:0 auto 24px}
.hero-badges{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:32px}

.section-title{font-size:1.25rem;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.section-title .icon{font-size:1.5rem}

#features-container{width:100%;max-width:1400px;margin:0 auto;padding:0 32px}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,300px);gap:16px;margin-bottom:40px;justify-content:center}
.feature-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;text-decoration:none;color:var(--text);transition:all .2s;display:flex;flex-direction:column}
.feature-card:hover{border-color:var(--primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.feature-card .card-icon{font-size:2rem;margin-bottom:8px}
.feature-card .card-name{font-weight:600;font-size:1rem;margin-bottom:4px}
.feature-card .card-desc{color:var(--text2);font-size:.85rem;flex:1}
.feature-card .card-category{margin-top:12px}
@media(max-width:768px){#features-container{padding:0 16px}.feature-grid{gap:12px}}
@media(max-width:480px){.feature-grid{grid-template-columns:repeat(auto-fill,160px);gap:10px}.feature-card{padding:12px}.feature-card .card-icon{font-size:1.25rem;margin-bottom:4px}.feature-card .card-name{font-size:.85rem}.feature-card .card-desc{font-size:.75rem}}

.about-section{padding:40px 0}
.about-section h2{margin-bottom:16px}
.about-section p{color:var(--text2);margin-bottom:12px;max-width:700px}
.tech-stack{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tech-tag{padding:4px 12px;background:#f1f5f9;border-radius:20px;font-size:.8rem;color:var(--text2)}

.blog-list{display:grid;gap:16px;margin-top:16px}
.blog-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;text-decoration:none;color:var(--text);transition:all .2s;display:block}
.blog-card:hover{border-color:var(--primary);box-shadow:var(--shadow-lg)}
.blog-card .blog-date{color:var(--text3);font-size:.8rem;margin-bottom:4px}
.blog-card .blog-title{font-weight:600;font-size:1.1rem;margin-bottom:6px}
.blog-card .blog-summary{color:var(--text2);font-size:.9rem}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
@media(max-width:768px){.contact-grid{grid-template-columns:1fr}}
.contact-info-item{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}
.contact-info-item svg{width:20px;height:20px;color:var(--primary);flex-shrink:0;margin-top:2px}
.contact-info-item .label{font-weight:500;font-size:.9rem}
.contact-info-item .value{color:var(--text2);font-size:.9rem}

.contact-upload-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:24px 16px;text-align:center;cursor:pointer;transition:all .2s}
.contact-upload-zone:hover,.contact-upload-zone.dragover{border-color:var(--primary);background:rgba(59,130,246,.04)}
.contact-upload-zone svg{color:var(--text2);margin-bottom:8px}
.contact-upload-zone p{color:var(--text2);font-size:.85rem;margin:0}
.contact-upload-zone .main-text{font-size:.95rem;color:var(--text);font-weight:500;margin-bottom:4px}
.contact-file-list{margin-top:8px}
.contact-file-list .file-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#f1f5f9;border-radius:var(--radius);margin-bottom:4px;font-size:.85rem}
.contact-file-list .file-item .name{font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.contact-file-list .file-item .size{color:var(--text2);font-size:.8rem}
.contact-file-list .file-item .remove{cursor:pointer;color:var(--danger);font-size:1.1rem;border:none;background:none;padding:0 4px;line-height:1}

.blog-article{max-width:800px;margin:0 auto}
.blog-article h1{margin-bottom:8px}
.blog-article .meta{color:var(--text2);font-size:.9rem;margin-bottom:24px}
.blog-article p{margin-bottom:16px;color:var(--text2);line-height:1.8}
.blog-article h2{margin-top:32px;margin-bottom:12px}
.blog-features{margin-top:40px;padding-top:24px;border-top:1px solid var(--border)}
.blog-features h3{font-size:1rem;margin-bottom:12px;color:var(--text)}
.blog-feature-links{display:flex;flex-wrap:wrap;gap:10px}
.blog-feature-link{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--text);font-size:.9rem;transition:all .2s}
.blog-feature-link:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-1px)}
.blog-feature-link .link-icon{font-size:1.1rem}
