/* Savvy Tech Sphere - paid-tool funnel page styles.
   Builds on shared.css design tokens. Funnel pages are an additive product
   sub-surface; they reuse the corp nav/footer styling from shared.css. */

main {
    max-width: 880px;
    margin: 0 auto;
    padding: 2rem 1.25rem 3rem;
}

.funnel-hero {
    text-align: center;
    padding: 2.5rem 1rem 1.5rem;
}

.funnel-hero h1 {
    font-size: 2.25rem;
    color: var(--primary-dark);
    margin-bottom: 0.5rem;
}

.funnel-tagline {
    font-size: 1.25rem;
    color: var(--dark-gray);
    margin-bottom: 1rem;
}

.funnel-summary {
    font-size: 1.05rem;
    color: var(--gray-accessible);
    max-width: 640px;
    margin: 0 auto 1.25rem;
    line-height: 1.6;
}

.funnel-price {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--primary-dark);
    margin-bottom: 1.5rem;
}

.funnel-pending-note {
    font-size: 0.95rem;
    color: var(--gray-accessible);
    margin: 0 auto 1.25rem;
    max-width: 480px;
}

.funnel-cta {
    display: inline-block;
    /* --primary-dark on white is ~6.2:1 (WCAG AA). --primary-blue was only
       3.72:1, which fails AA for the button's normal-weight label. */
    background: var(--primary-dark);
    color: var(--white);
    font-weight: 600;
    font-size: 1.05rem;
    text-decoration: none;
    padding: 0.85rem 2rem;
    border-radius: 8px;
    transition: filter 0.15s ease-in-out;
}

.funnel-cta:hover,
.funnel-cta:focus {
    /* No token darker than --primary-dark exists; darken the state with a
       filter so the resting AA contrast is preserved and the hover stays
       distinct. */
    filter: brightness(0.9);
}

/* Secondary CTA (e.g. "Download free trial") - lower emphasis than the filled
   primary buy CTA so the paid action stays dominant. Outline style: dark text
   and border on white. --primary-dark on white is ~6.2:1 (WCAG AA). Rendered
   stacked beneath the primary CTA in the hero. */
.funnel-cta-secondary {
    /* Block + auto side margins so it stacks BELOW the primary CTA (not beside
       it) and stays centered in the centered hero. */
    display: block;
    width: fit-content;
    margin: 0.75rem auto 0;
    background: transparent;
    color: var(--primary-dark);
    border: 1px solid var(--primary-dark);
    /* Match the primary padding minus the 1px border so both buttons are the
       same height. */
    padding: calc(0.85rem - 1px) calc(2rem - 1px);
}

.funnel-cta-secondary:hover,
.funnel-cta-secondary:focus {
    /* Subtle fill on hover; dark text on off-white preserves AA contrast. */
    background: var(--off-white);
    filter: none;
}

.funnel-features {
    margin-top: 2.5rem;
}

.funnel-feature-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1.25rem;
}

.funnel-feature {
    background: var(--off-white);
    border: 1px solid var(--light-gray);
    border-radius: 10px;
    padding: 1.25rem;
}

.funnel-feature h2 {
    font-size: 1.15rem;
    color: var(--primary-dark);
    margin-bottom: 0.5rem;
}

.funnel-feature p {
    color: var(--gray-accessible);
    line-height: 1.55;
}

.funnel-faqs {
    margin-top: 2.5rem;
}

.funnel-faqs h2 {
    font-size: 1.4rem;
    color: var(--primary-dark);
    margin-bottom: 1rem;
}

.funnel-faqs dt {
    font-weight: 600;
    color: var(--dark-gray);
    margin-top: 1rem;
}

.funnel-faqs dd {
    margin: 0.25rem 0 0;
    color: var(--gray-accessible);
    line-height: 1.55;
}

.funnel-cta-band {
    text-align: center;
    margin-top: 2.5rem;
}

.funnel-thanks {
    padding-top: 3rem;
}
