.fi-body {
    background: #f3f7f6;
}

.fi-main {
    padding-bottom: 4rem;
}

.fi-header-heading {
    letter-spacing: -0.035em;
    text-wrap: balance;
}

.fi-header-subheading,
.fi-section-header-description {
    max-width: 65ch;
    line-height: 1.6;
    text-wrap: pretty;
}

.fi-section,
.fi-ta-ctn {
    border-color: color-mix(in srgb, #0e6f61 14%, transparent);
    box-shadow: 0 1rem 2.8rem -2rem rgb(14 111 97 / 32%);
}

.fi-section {
    border-radius: 1.15rem;
}

.fi-ta-ctn {
    border-radius: 0.85rem;
    overflow: hidden;
}

.fi-btn,
.fi-link {
    transition: transform 180ms ease, box-shadow 220ms ease, background-color 220ms ease;
}

.fi-btn:hover {
    transform: translateY(-1px);
}

.fi-btn:active {
    transform: translateY(1px) scale(.985);
}

.fi-btn:focus-visible,
.fi-link:focus-visible {
    outline: 3px solid rgb(19 145 127 / 34%);
    outline-offset: 3px;
}

.mj-plano-detalhes,
.mj-resumo-pedido {
    border-left: .22rem solid #13917f;
    background: rgb(19 145 127 / 7%);
    border-radius: .25rem .85rem .85rem .25rem;
    padding: 1rem 1.15rem 1.1rem;
}

.mj-plano-detalhes p,
.mj-resumo-pedido p {
    margin: 0;
    max-width: 65ch;
    line-height: 1.55;
}

.mj-plano-detalhes ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .4rem 1.5rem;
    list-style: none;
    margin: .85rem 0 0;
    padding: 0;
}

.mj-plano-detalhes li::before {
    color: #13917f;
    content: "✓";
    font-weight: 700;
    margin-right: .5rem;
}

@media (max-width: 640px) {
    .fi-main {
        padding-inline: .75rem;
    }

    .mj-plano-detalhes ul {
        grid-template-columns: 1fr;
    }
}
