.ct-hero {
    padding: 120px 0 60px;
    margin-top: -72px;
    background: var(--white);
    position: relative; overflow: hidden;
}
.ct-hero::before {
    content: ''; position: absolute; inset: 0;
    background-image: radial-gradient(var(--gray-200) 1px, transparent 1px);
    background-size: 30px 30px; opacity: 0.5;
}
.ct-hero .container { position: relative; z-index: 1; text-align: center; }
.ct-badge {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 8px 18px;
    background: var(--primary-light); border: 1px solid var(--primary-border);
    border-radius: 999px; color: var(--primary);
    font-size: 14px; font-weight: 600; margin-bottom: 24px;
}
.ct-hero-title { font-size: 48px; font-weight: 800; color: var(--gray-800); margin-bottom: 16px; line-height: 1.2; letter-spacing: -0.02em; }
.ct-hero-sub { font-size: 18px; color: var(--gray-500); line-height: 1.7; }

.ct-cards-section { background: var(--gray-50); padding: 72px 0; }
.ct-cards-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ct-card {
    background: var(--white); border: 1px solid var(--gray-200); border-radius: 16px;
    padding: 36px 24px; text-align: center; transition: transform 0.2s, box-shadow 0.2s;
}
.ct-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.ct-card-icon {
    width: 64px; height: 64px; background: var(--primary-light); border-radius: 16px;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-size: 26px; color: var(--primary);
}
.ct-card-title { font-size: 16px; font-weight: 700; color: var(--gray-800); margin-bottom: 12px; }
.ct-card-value { font-size: 15px; font-weight: 600; color: var(--primary); margin-bottom: 6px; word-break: break-all; }
.ct-card-desc { font-size: 13px; color: var(--gray-400); }

.ct-cards-section .section-tag { background: var(--primary); }

@media (max-width: 768px) {
    .ct-hero-title { font-size: 32px; }
    .ct-cards-grid { grid-template-columns: 1fr; }
    .ct-form-card { padding: 28px 20px; }
    .ct-form-row { grid-template-columns: 1fr; gap: 0; }
}

:root[data-theme="dark"] .ct-hero { background: var(--gray-50); }
:root[data-theme="dark"] .ct-hero::before { opacity: 0.15; }
:root[data-theme="dark"] .ct-cards-section { background: var(--gray-50); }
:root[data-theme="dark"] .ct-form-section { background: var(--gray-100); }
:root[data-theme="dark"] .ct-card,
:root[data-theme="dark"] .ct-form-card { background: var(--gray-100); border-color: var(--gray-300); box-shadow: none; }
:root[data-theme="dark"] .ct-form-card .form-control { background: var(--gray-50); border-color: var(--gray-300); color: var(--gray-800); }
