.text-green { color: var(--primary-color); }
.tracking-wide { letter-spacing: 2px; }
.hero-wrapper { position: relative; padding: 70px 0 100px; overflow: hidden; }
h1.hero-title { font-family: 'Playfair Display', serif; font-weight: 600; font-size: 4.5rem; line-height: 1.1; color: var(--text-dark); letter-spacing: -1px; margin-bottom: 1.5rem; }
@media (max-width: 768px) { h1.hero-title { font-size: 3rem; } }
.strike-group { position: relative; display: inline-block; white-space: nowrap; }
.text-die { color: #6c757d; position: relative; z-index: 1; }
.text-die::after { content: ""; position: absolute; left: -5%; top: 55%; width: 110%; height: 6px; background-color: var(--scribble-color); border-radius: 4px; transform: rotate(-3deg); opacity: 0.9; z-index: 2; }
.text-handwritten { font-family: 'Caveat', cursive; color: var(--text-blue); font-size: 1.1em; font-weight: 700; margin-left: 10px; position: relative; }
.hero-subtitle { font-size: 1.25rem; color: #5A5D63; max-width: 780px; margin: 0 auto 3rem auto; line-height: 1.6; }
.badge-pill-saas { display: inline-block; padding: 6px 16px; background: #ffffff; color: var(--text-main); font-size: 0.85rem; font-weight: 400; border-radius: 50px; box-shadow: 0 2px 8px rgba(0,0,0,0.04); border: 1px solid rgba(0,0,0,0.02); }
.hero-search-container { max-width: 600px; margin: 0 auto; position: relative; }
.hero-search-form { display: flex; background: #ffffff; border: 1px solid var(--border-color); padding: 6px; border-radius: 12px; box-shadow: var(--shadow-lg); transition: transform 0.2s, box-shadow 0.2s; }
.hero-search-form:focus-within { transform: translateY(-2px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); border-color: var(--primary-orange); }
.input-wrapper { flex: 1; display: flex; align-items: center; padding-left: 16px; }
.search-icon { color: var(--text-muted); font-size: 1.1rem; margin-right: 12px; }
#heroSearchInput { border: none; outline: none; width: 100%; font-size: 1rem; color: var(--text-main); }
.hero-btn-primary { background: var(--primary-orange); color: white; border: none; padding: 12px 28px; border-radius: 8px; font-weight: 600; font-size: 1rem; cursor: pointer; transition: background 0.2s; }
.hero-btn-primary:hover { background: var(--primary-orange-dark); }
.trust-metrics { display: flex; justify-content: center; align-items: center; gap: 2rem; }
.metric-item { display: flex; flex-direction: column; }
.metric-val { font-size: 1.5rem; font-weight: 800; color: var(--dark-bg); }
.metric-lbl { font-size: 0.8rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; font-weight: 600; }
.vr-sep { width: 1px; height: 40px; background: var(--border-color); }
.section-container { padding: 80px 0; }
.bg-dark { background-color: var(--dark-bg); }
.bg-white { background-color: #fff; }
.section-title { font-size: 2rem; margin-bottom: 0.5rem; }
.section-desc { color: var(--text-muted); font-size: 1.1rem; }
.feature-row { display: flex; gap: 16px; }
.feat-icon { width: 48px; height: 48px; background: rgba(255,255,255,0.1); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; color: #60A5FA; flex-shrink: 0; }
.saas-graphic-placeholder { position: relative; display: inline-block; }
.floating-badge { position: absolute; background: white; padding: 10px 20px; border-radius: 8px; box-shadow: var(--shadow-lg); color: var(--dark-bg); font-weight: 700; font-size: 0.9rem; display: flex; align-items: center; gap: 8px; animation: float 4s ease-in-out infinite; }
.badge-1 { top: 0; right: -20px; animation-delay: 0s; }
.badge-2 { bottom: 0; left: -20px; animation-delay: 2s; }
@keyframes float { 0% { transform: translateY(0px); } 50% { transform: translateY(-10px); } 100% { transform: translateY(0px); } }
.brand-grid-layout { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 20px; width: 100%; }
.brand-logo-item { height: 100px; width: 100%; padding: 16px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; background: #f9efe4; border-radius: 16px; border: 1px solid rgba(0, 0, 0, 0.03); box-shadow: 0 4px 20px -4px rgba(0, 0, 0, 0.02); cursor: pointer; transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1); position: relative; z-index: 1; }
.brand-logo-item:hover { transform: translateY(-4px); box-shadow: 0 12px 30px -6px rgba(0, 0, 0, 0.08); border-color: rgba(0, 0, 0, 0.06); z-index: 2; }
.brand-logo-item img { filter: grayscale(0%) opacity(0.8) contrast(1);width: 100%; max-height: 70px; object-fit: contain; display: block; }
.brand-logo-item:hover img { filter: grayscale(0%) opacity(1) contrast(1); }
#category-wrapper h3 { font-size: 1.2rem; margin-bottom: 20px; font-weight: 600; }
#category-wrapper ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
#category-wrapper li a { display: block; padding: 10px 16px; background: #fff; border: 1px solid var(--border-color); border-radius: 6px; color: var(--text-main); font-size: 0.9rem; transition: all 0.2s; }
#category-wrapper li a:hover { border-color: var(--primary-color); color: var(--primary-color); background: #EFF6FF; }
.section-header { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 30px; padding-bottom: 15px; border-bottom: 1px solid #eee; }
.section-header a { text-decoration: none; }
.section-header a:hover { color: #ff0000 !important; text-decoration: underline; }
@media (max-width: 768px) { .hero-wrapper { padding: 60px 0 60px; } .hero-title { font-size: 2.2rem; } .hero-search-form { flex-direction: column; padding: 10px; } .input-wrapper { padding: 10px 0; border-bottom: 1px solid #f0f0f0; margin-bottom: 10px; } .hero-btn-primary { width: 100%; } .trust-metrics { gap: 1rem; } .metric-val { font-size: 1.1rem; } .section-header { flex-direction: column; align-items: flex-start; gap: 10px; } }