/**
 * Correção isolada dos cards:
 * Seja Revendedor e Food Service.
 *
 * Este arquivo deve ser carregado depois do home.css.
 */

/* =========================================================
   DESKTOP
   ========================================================= */

@media screen and (min-width: 1051px) {

    body .ou-home-business {
        padding: 14px 0 44px !important;
        background: #fffaf2 !important;
    }

    body .ou-home-business .ou-home-business-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }

    /*
     * Card dividido em duas colunas reais:
     * 48% texto e 52% imagem.
     */
    body .ou-home-business .ou-home-business-card {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 48% 52% !important;
        grid-template-rows: 310px !important;

        width: 100% !important;
        height: 310px !important;
        min-height: 310px !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: hidden !important;
        border-radius: 16px !important;
    }

    /*
     * A película antiga deixa de ser necessária.
     */
    body .ou-home-business .ou-home-business-overlay {
        display: none !important;
    }

    /*
     * Imagem ocupa somente a segunda coluna.
     */
    body .ou-home-business .ou-home-business-picture {
        position: relative !important;
        z-index: 1 !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        inset: auto !important;

        grid-column: 2 !important;
        grid-row: 1 !important;

        display: block !important;

        width: 100% !important;
        height: 310px !important;
        min-height: 310px !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: hidden !important;
    }

    body .ou-home-business .ou-home-business-picture img {
        position: static !important;
        inset: auto !important;

        display: block !important;

        width: 100% !important;
        height: 310px !important;
        min-height: 310px !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        object-fit: cover !important;
        object-position: center !important;
    }

    /*
     * Conteúdo ocupa somente a primeira coluna.
     */
    body .ou-home-business .ou-home-business-content {
        position: relative !important;
        z-index: 2 !important;

        grid-column: 1 !important;
        grid-row: 1 !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;

        width: 100% !important;
        height: 310px !important;
        min-height: 310px !important;
        max-width: none !important;

        margin: 0 !important;
        padding: 27px 24px !important;

        text-align: left !important;
    }

    body .ou-home-business .ou-home-business-eyebrow {
        display: block !important;

        margin: 0 0 8px !important;

        font-size: 10px !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        letter-spacing: 0.04em !important;
        text-transform: uppercase !important;
    }

    body .ou-home-business .ou-home-business-content h2 {
        display: block !important;

        width: 100% !important;
        max-width: 245px !important;

        margin: 0 !important;

        font-size: 23px !important;
        font-weight: 800 !important;
        line-height: 1.08 !important;
        letter-spacing: -0.02em !important;

        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body .ou-home-business .ou-home-business-content p {
        display: block !important;

        width: 100% !important;
        max-width: 245px !important;

        margin: 13px 0 0 !important;

        font-size: 11px !important;
        line-height: 1.5 !important;
    }

    /*
     * Botões não ultrapassam a área do texto.
     */
    body .ou-home-business .ou-home-business-content > a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: space-between !important;

        gap: 14px !important;

        width: auto !important;
        max-width: 245px !important;
        min-width: 0 !important;

        height: auto !important;
        min-height: 42px !important;

        margin: 17px 0 0 !important;
        padding: 10px 16px !important;

        border: 0 !important;
        border-radius: 10px !important;

        font-size: 10px !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;

        white-space: normal !important;
        text-decoration: none !important;
    }

    body .ou-home-business
    .ou-home-business-content > a span:first-child {
        display: block !important;
        max-width: 185px !important;
    }

    body .ou-home-business
    .ou-home-business-content > a span:last-child {
        display: block !important;
        flex: 0 0 auto !important;

        margin-left: auto !important;

        font-size: 15px !important;
        line-height: 1 !important;
    }

    /* Seja Revendedor */

    body .ou-home-business
    .ou-home-business-card--reseller {
        background: #cc0000 !important;
        color: #ffffff !important;
    }

    body .ou-home-business
    .ou-home-business-card--reseller
    .ou-home-business-eyebrow {
        color: #fadd31 !important;
    }

    body .ou-home-business
    .ou-home-business-card--reseller
    .ou-home-business-content h2,
    body .ou-home-business
    .ou-home-business-card--reseller
    .ou-home-business-content p {
        color: #ffffff !important;
    }

    body .ou-home-business
    .ou-home-business-card--reseller
    .ou-home-business-content > a {
        background: #fadd31 !important;
        color: #181818 !important;
    }

    body .ou-home-business
    .ou-home-business-card--reseller
    .ou-home-business-picture img {
        object-position: center !important;
    }

    /* Food Service */

    body .ou-home-business
    .ou-home-business-card--food {
        background: #f8e7be !important;
        color: #181818 !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-eyebrow {
        color: #ed3237 !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content h2,
    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content p {
        color: #181818 !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content > a {
        background: #ed3237 !important;
        color: #ffffff !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-picture img {
        object-position: 68% center !important;
    }
}

/* =========================================================
   TABLET
   ========================================================= */

@media screen and (min-width: 768px) and (max-width: 1050px) {

    body .ou-home-business .ou-home-business-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    body .ou-home-business .ou-home-business-card {
        display: grid !important;
        grid-template-columns: 45% 55% !important;
        min-height: 320px !important;
        padding: 0 !important;
    }

    body .ou-home-business .ou-home-business-overlay {
        display: none !important;
    }

    body .ou-home-business .ou-home-business-content {
        position: relative !important;
        grid-column: 1 !important;
        grid-row: 1 !important;

        width: 100% !important;
        min-height: 320px !important;
        max-width: none !important;

        padding: 30px 26px !important;
    }

    body .ou-home-business .ou-home-business-picture {
        position: relative !important;
        inset: auto !important;

        grid-column: 2 !important;
        grid-row: 1 !important;

        width: 100% !important;
        height: 320px !important;
        min-height: 320px !important;
    }

    body .ou-home-business .ou-home-business-picture img {
        position: static !important;

        width: 100% !important;
        height: 320px !important;
        min-height: 320px !important;

        object-fit: cover !important;
    }
}

/* =========================================================
   CELULAR
   ========================================================= */

@media screen and (max-width: 767px) {

    body .ou-home-business .ou-home-business-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    body .ou-home-business .ou-home-business-card {
        position: relative !important;
        display: flex !important;
        align-items: flex-end !important;

        width: 100% !important;
        min-height: 470px !important;

        padding: 0 !important;
        overflow: hidden !important;
    }

    body .ou-home-business .ou-home-business-picture {
        position: absolute !important;
        z-index: 1 !important;
        inset: 0 !important;

        width: 100% !important;
        height: 100% !important;
        min-height: 470px !important;
    }

    body .ou-home-business .ou-home-business-picture img {
        position: absolute !important;
        inset: 0 !important;

        width: 100% !important;
        height: 100% !important;
        min-height: 470px !important;

        object-fit: cover !important;
        object-position: center !important;
    }

    body .ou-home-business .ou-home-business-overlay {
        position: absolute !important;
        z-index: 2 !important;
        inset: 0 !important;

        display: block !important;

        background: linear-gradient(
            0deg,
            rgba(0, 0, 0, 0.92) 0%,
            rgba(0, 0, 0, 0.60) 44%,
            rgba(0, 0, 0, 0.08) 78%,
            rgba(0, 0, 0, 0) 100%
        ) !important;
    }

    body .ou-home-business .ou-home-business-content {
        position: relative !important;
        z-index: 3 !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-end !important;

        width: 100% !important;
        min-height: 470px !important;
        max-width: none !important;

        padding: 27px 22px !important;
    }

    body .ou-home-business .ou-home-business-content h2 {
        max-width: 100% !important;

        font-size: 29px !important;
        line-height: 1.08 !important;
    }

    body .ou-home-business .ou-home-business-content p {
        max-width: 100% !important;

        font-size: 14px !important;
        line-height: 1.5 !important;
    }

    body .ou-home-business
    .ou-home-business-card--food,
    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content h2,
    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content p {
        color: #ffffff !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-eyebrow {
        color: #fadd31 !important;
    }
}
/**
 * Ajuste exclusivo do Food Service no computador.
 */

@media screen and (min-width: 1051px) {

    /*
     * Aumenta a área do texto e reduz um pouco a foto.
     */
    body .ou-home-business
    .ou-home-business-card--food {
        grid-template-columns: 52% 48% !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content {
        grid-column: 1 !important;
        width: 100% !important;
        padding: 27px 25px !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-picture {
        grid-column: 2 !important;
        width: 100% !important;
    }

    /*
     * Título com largura suficiente.
     */
    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content h2 {
        width: 100% !important;
        max-width: 290px !important;
        font-size: 23px !important;
        line-height: 1.08 !important;
    }

    /*
     * Descrição sem quebrar excessivamente.
     */
    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content p {
        width: 100% !important;
        max-width: 285px !important;
        font-size: 11px !important;
        line-height: 1.5 !important;
    }

    /*
     * Botão do Food Service.
     */
    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content > a {
        width: auto !important;
        min-width: 245px !important;
        max-width: 285px !important;
        padding: 10px 16px !important;
        white-space: normal !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content > a span:first-child {
        max-width: 220px !important;
    }

    /*
     * Mantém o cozinheiro bem enquadrado.
     */
    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-picture img {
        object-position: 66% center !important;
    }
}

@media screen and (max-width: 767px) {

    body .ou-home-business
    .ou-home-business-content > a {
        width: auto !important;
        max-width: calc(100% - 10px) !important;
        min-height: 52px !important;
        padding: 11px 18px !important;
        white-space: normal !important;
    }

    body .ou-home-business
    .ou-home-business-content > a span:first-child {
        max-width: calc(100% - 35px) !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
    }

    body .ou-home-business
    .ou-home-business-card--food
    .ou-home-business-content h2 {
        font-size: 28px !important;
        line-height: 1.08 !important;
    }
}