/* 
 * Services Page Styles - Nexra Corppe
 * Standardized with Precision Corporate Theme
 */

.svc-hero { 
    background: #0f172a; 
    background-image: 
        linear-gradient(to right, rgba(15,23,42,0.93) 40%, rgba(15,23,42,0.72) 100%),
        url('/images/services-hero-bg-optimized.webp');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding: 12rem 0 8rem; 
    color: #fff; 
    border-bottom: 1px solid rgba(255,255,255,0.1); 
    position: relative; 
}

.svc-hero h1 { 
    font-size: clamp(3rem, 5vw, 5rem); 
    font-weight: 800; 
    line-height: 1.05; 
    letter-spacing: -0.04em; 
    color: #f8fafc; 
    margin-bottom: 1.5rem; 
    max-width: 800px; 
}

.svc-hero p { 
    font-size: 1.25rem; 
    color: #94a3b8; 
    max-width: 600px; 
    line-height: 1.6; 
}

.s-sm { 
    font-size: 0.875rem; 
    text-transform: uppercase; 
    letter-spacing: 0.1em; 
    color: #38bdf8; 
    font-weight: 700; 
    margin-bottom: 1.5rem; 
    display: flex; 
    align-items: center; 
    gap: 1rem; 
}

.s-sm::after { 
    content: ''; 
    height: 1px; 
    width: 40px; 
    background: #38bdf8; 
}

/* Sections */
.s-section { padding: 8rem 0; background: #fff; }
.s-section-alt { padding: 8rem 0; background: #f8fafc; border-top: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; }

.s-sm-blue { 
    font-size: 0.875rem; 
    text-transform: uppercase; 
    letter-spacing: 0.1em; 
    color: #2563eb; 
    font-weight: 700; 
    margin-bottom: 1rem; 
    display: flex; 
    align-items: center; 
    gap: 1rem; 
}

.s-sm-blue::after { 
    content: ''; 
    height: 1px; 
    width: 40px; 
    background: #2563eb; 
}

.s-h2 { 
    font-size: clamp(2rem, 3.5vw, 3rem); 
    font-weight: 800; 
    color: #0f172a; 
    letter-spacing: -0.02em; 
    line-height: 1.1; 
    margin-bottom: 1rem; 
}

/* Service Nav */
.svc-sticky-nav {
    background: #fff; 
    padding: 0; 
    border-bottom: 1px solid #e2e8f0; 
    position: sticky; 
    top: 70px; 
    z-index: 100; 
    overflow: hidden;
}

.svc-nav-container {
    display: flex; 
    gap: 0; 
    overflow: hidden; 
    flex-wrap: wrap; 
    justify-content: center; 
    padding: 0 1rem;
}

.svc-nav-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1.25rem 1.5rem;
    color: #64748b;
    font-weight: 600;
    font-size: 0.85rem;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: all 0.2s;
}

.svc-nav-link:hover, .svc-nav-link.active {
    color: #2563eb;
    border-bottom-color: #2563eb;
}

/* Service Cards */
.svc-mega-card { 
    background: #fff; 
    border: 1px solid #e2e8f0; 
    border-radius: 12px; 
    padding: 0; 
    overflow: hidden; 
    transition: all 0.3s ease; 
    display: flex; 
    flex-direction: column; 
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05); 
}

.svc-mega-card:hover { 
    border-color: #38bdf8; 
    box-shadow: 0 20px 40px -10px rgba(56, 189, 248, 0.15); 
    transform: translateY(-5px); 
}

.svc-card-head { 
    background: #fff; 
    padding: 2.5rem 3rem 1.5rem; 
    border-left: 4px solid transparent; 
    transition: border-color 0.3s ease; 
}

.svc-mega-card:hover .svc-card-head { 
    border-left-color: #2563eb; 
}

.svc-card-head i { 
    font-size: 2.5rem; 
    color: #2563eb; 
    margin-bottom: 1.5rem; 
    display: block; 
}

.svc-card-head h3 { 
    font-size: 1.5rem; 
    font-weight: 800; 
    color: #0f172a; 
    margin-bottom: 0.5rem; 
    letter-spacing: -0.01em; 
    line-height: 1.2; 
}

.svc-card-head p { 
    color: #64748b; 
    font-size: 0.95rem; 
    line-height: 1.6; 
}

.svc-card-body { padding: 2.5rem 3rem; flex: 1; }

.svc-feature-list { list-style: none; padding: 0; margin: 0 0 2rem; }

.svc-feature-list li { 
    display: flex; 
    align-items: flex-start; 
    gap: 0.75rem; 
    padding: 0.6rem 0; 
    border-bottom: 1px solid #f1f5f9; 
    color: #475569; 
    font-size: 0.925rem; 
}

.svc-feature-list li:last-child { border-bottom: none; }

.svc-feature-list li::before { 
    content: '→'; 
    color: #2563eb; 
    font-weight: 700; 
    flex-shrink: 0; 
}

.svc-link { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.5rem; 
    color: #2563eb; 
    font-weight: 700; 
    text-transform: uppercase; 
    font-size: 0.8rem; 
    letter-spacing: 0.05em; 
    text-decoration: none; 
}

.svc-link i { transition: transform 0.2s; }
.svc-link:hover i { transform: translateX(5px); }

/* Category headers */
.cat-header { 
    display: flex; 
    align-items: flex-start; 
    gap: 2rem; 
    margin-bottom: 3rem; 
    padding-bottom: 2rem; 
    border-bottom: 1px solid #e2e8f0; 
}

.cat-icon-wrap { 
    width: 64px; 
    height: 64px; 
    background: #0f172a; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    flex-shrink: 0; 
}

.cat-icon-wrap i { font-size: 1.5rem; color: #38bdf8; }

.cat-header h2 { font-size: 1.75rem; font-weight: 800; color: #0f172a; margin-bottom: 0.5rem; }
.cat-header p { color: #64748b; font-size: 1rem; }

.svc-grid { 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    gap: 1.5rem; 
}

/* Why Choose Us */
.why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: #e2e8f0; }

.why-item { background: #fff; padding: 3rem 2.5rem; transition: background 0.3s; }
.why-item:hover { background: #0f172a; }
.why-item:hover h3, .why-item:hover p { color: #f8fafc !important; }

.why-item i { font-size: 2rem; color: #2563eb; margin-bottom: 1.5rem; }
.why-item:hover i { color: #38bdf8; }

.why-item h3 { font-size: 1.125rem; font-weight: 700; color: #0f172a; margin-bottom: 0.75rem; }
.why-item p { color: #64748b; font-size: 0.875rem; line-height: 1.6; }

/* CTA */
.svc-cta { 
    background: #2563eb; 
    padding: 6rem 0; 
    text-align: center; 
}

.svc-cta h2 { 
    font-size: clamp(2rem, 4vw, 3.5rem); 
    font-weight: 800; 
    color: #fff; 
    margin-bottom: 1.5rem; 
    letter-spacing: -0.03em; 
}

.svc-cta p { 
    color: rgba(255,255,255,0.8); 
    font-size: 1.125rem; 
    max-width: 600px; 
    margin: 0 auto 3rem; 
}

.svc-cta-link { 
    background: #fff; 
    color: #2563eb; 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    padding: 1rem 2.5rem; 
    font-weight: 700; 
    text-decoration: none; 
    transition: all 0.2s; 
    gap: 0.75rem; 
}

.svc-cta-link:hover { 
    background: #f8fafc; 
}

/* Mobile Responsiveness */
@media (max-width: 1024px) {
    .svc-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 960px) {
    .svc-hero { padding: 8rem 0 4rem; }
    .why-grid { grid-template-columns: 1fr 1fr; }
    .cat-header { flex-direction: column; gap: 1rem; align-items: flex-start; }
    .svc-card-head, .svc-card-body { padding: 2rem; }
}

@media (max-width: 768px) {
    .svc-sticky-nav { top: 60px; }
    .svc-nav-link { padding: 1rem; font-size: 0.75rem; }
    .svc-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .why-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
    .svc-hero h1 { font-size: 2.25rem; }
    .svc-cta h2 { font-size: 1.75rem; }
    .svc-cta-link { width: 100%; }
}
