/* ── Hero Gradient ─────────────────────────────────── */
.hero-gradient {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
}

/* ── Smooth scroll ─────────────────────────────────── */
html {
    scroll-behavior: smooth;
}

/* ── Sticky nav offset for anchor links ────────────── */
[id] {
    scroll-margin-top: 9rem;
}

/* ── FAQ Accordion ─────────────────────────────────── */
.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, padding 0.3s ease-out;
}

.faq-answer.open {
    max-height: 500px;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.faq-chevron {
    transition: transform 0.3s ease;
}

.faq-item.active .faq-chevron {
    transform: rotate(180deg);
}

/* ── Service section alternating backgrounds ───────── */
.service-section:nth-child(even) {
    background-color: #f9fafb;
}

/* ── Pricing card hover ────────────────────────────── */
.pricing-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.pricing-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

/* ── Mobile menu animation ─────────────────────────── */
#mobile-menu {
    transition: max-height 0.3s ease-out;
    max-height: 0;
    overflow: hidden;
}

#mobile-menu.open {
    max-height: 400px;
}

/* ── CTA button pulse on hero ──────────────────────── */
.cta-pulse {
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(158, 28, 34, 0.4); }
    50% { box-shadow: 0 0 0 8px rgba(158, 28, 34, 0); }
}

/* ── Contact form ──────────────────────────────────── */
.form-input:focus {
    outline: none;
    border-color: #9E1C22;
    box-shadow: 0 0 0 3px rgba(158, 28, 34, 0.1);
}

/* ── Partner logos grayscale ───────────────────────── */
.partner-logo {
    filter: grayscale(100%);
    opacity: 0.6;
    transition: filter 0.3s ease, opacity 0.3s ease;
}

.partner-logo:hover {
    filter: grayscale(0%);
    opacity: 1;
}

/* ── Service anchor nav scroll ─────────────────────── */
.service-nav {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.service-nav::-webkit-scrollbar {
    display: none;
}
