/* Polish público — não substitui app.css / admin-shell do live. */
.sc-quote .sc-kind,
.sc-quote .sc-kind--wide {
    border-radius: 4px;
}

.sc-kinds {
    justify-content: flex-start;
}

.sc-flow-sec {
    background: #0A2342;
    color: #f4f6f8;
}

.sc-flow-sec .sc-h2,
.sc-flow-sec .meta {
    color: #f4f6f8;
}

.sc-flow {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 0.75rem 0.5rem;
    margin: 2rem 0 0.75rem;
    padding: 0;
    list-style: none;
}

.sc-flow li {
    flex: 1 1 9rem;
    min-width: 8.5rem;
    padding: 1rem 0.9rem;
    border: 1px solid color-mix(in srgb, #fff 18%, transparent);
}

.sc-flow__arrow {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    border: 0;
    min-width: auto;
    padding: 0 0.15rem;
    color: #9eb0c4;
    font-size: 1.25rem;
}

.sc-flow__k {
    display: block;
    margin-bottom: 0.55rem;
    color: #9eb0c4;
    font-size: 0.68rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.sc-flow strong {
    display: block;
    font-size: 1.05rem;
    letter-spacing: -0.02em;
}

.sc-flow span:last-child {
    display: block;
    margin-top: 0.35rem;
    color: #c5cdd6;
    font-size: 0.9rem;
}

.sc-flow__note {
    color: #9eb0c4;
}

.sc-hero--family .sc-hero__title {
    text-transform: uppercase;
}

.sc-docs__size {
    margin-left: 0.4rem;
    color: #7b8490;
    font-size: 0.75rem;
    letter-spacing: 0.04em;
}

.sc-faq__list {
    display: grid;
    gap: 1.5rem;
    margin-top: 2rem;
}

.sc-faq__item {
    padding-top: 1.25rem;
    border-top: 1px solid #d3d8de;
}

.sc-faq__item dt {
    font-size: 1.15rem;
    letter-spacing: -0.02em;
}

.sc-faq__item dd {
    margin: 0.55rem 0 0;
    max-width: 62ch;
    color: #3b4450;
}

.sc-article__body {
    max-width: 62ch;
}

.sc-article__body p,
.sc-service-prose .sc-lead,
.sc-service-prose .sc-h2 {
    margin-top: 1.35rem;
}

.sc-line-block {
    margin-top: 2rem;
}

.sc-families--page {
    display: grid;
    gap: 1.5rem;
    margin-top: 1.75rem;
}

.sc-families--page h3 {
    margin: 0.4rem 0 0.55rem;
    font-size: clamp(1.5rem, 2vw, 1.875rem);
    letter-spacing: -0.03em;
}

.sc-spec--wide {
    margin-top: 1.5rem;
}

.sc-cta-row {
    flex-wrap: wrap;
}

@media (min-width: 768px) {
    .sc-families--page {
        grid-template-columns: 1fr 1fr;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .sc-flow li {
        transition: border-color 180ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    .sc-flow li:hover {
        border-color: color-mix(in srgb, #fff 40%, transparent);
    }
}

@media (max-width: 639px) {
    .sc-flow__arrow {
        display: none;
    }

    .sc-spec,
    .sc-spec--wide {
        overflow-x: auto;
    }
}
