:root {
    --fb-background: #1a1918;
    --fb-footer-font: "Montserrat", sans-serif;
}

html,
body {
    background-color: #1a1918;
}

body .site-header,
body .menu-overlay {
    background-color: #1a1918;
}

body .site-footer {
    position: relative;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 46px minmax(0, 1fr);
    align-items: center;
    column-gap: 28px;
    width: calc(100% - 60px);
    max-width: 1500px;
    min-height: 108px;
    margin: 0 auto;
    padding: 34px 0 36px;
    border-top: 1px solid rgba(255,255,255,.08);
    background: #1a1918;
    color: rgba(255,255,255,.72);
    font-family: var(--fb-footer-font);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body .site-footer > .footer-left {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    margin: 0;
    padding: 0;
    color: rgba(255,255,255,.72);
    font-family: var(--fb-footer-font);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .08em;
    text-align: left;
}

body .site-footer > .footer-right {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 22px;
    margin: 0;
    padding: 0;
    color: rgba(255,255,255,.72);
    font-family: var(--fb-footer-font);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .08em;
    text-align: right;
}

body .site-footer .footer-cookies {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 14px;
    margin: 0;
    padding: 0;
    background: transparent;
}

body .site-footer .cookie-settings-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: rgba(255,255,255,.72);
    font-family: var(--fb-footer-font);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
}

body .site-footer > .footer-return-button {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    align-self: center;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: rgba(255,255,255,.78);
    cursor: pointer;
    opacity: .78;
}

body .site-footer .footer-return-button span {
    display: block;
    width: 11px;
    height: 11px;
    border-left: 1.5px solid currentColor;
    border-top: 1.5px solid currentColor;
    transform: translateY(3px) rotate(45deg);
}

body .site-footer .cookie-settings-link:hover {
    color: rgba(255,255,255,.95);
}

body .site-footer > .footer-return-button:hover {
    opacity: 1;
}

@media (max-width: 760px) {

    body .site-footer {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        max-width: none;
        min-height: 0;
        margin: 0;
        padding: 28px 18px 30px;
        border-top: 0;
        background: #1a1918;
        color: rgba(255,255,255,.72);
        font-family: var(--fb-footer-font);
        font-size: 9px;
        font-weight: 400;
        line-height: 1.5;
        letter-spacing: .035em;
        text-align: center;
        text-transform: uppercase;
    }

    body .site-footer > .footer-left {
        order: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        margin: 0;
        padding: 0;
        color: rgba(255,255,255,.72);
        font-family: var(--fb-footer-font);
        font-size: 9px;
        font-weight: 400;
        line-height: 1.5;
        letter-spacing: .035em;
        text-align: center;
    }

    body .site-footer > .footer-right {
        order: 2;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        margin: 0;
        padding: 0;
        color: rgba(255,255,255,.72);
        font-family: var(--fb-footer-font);
        font-size: 9px;
        font-weight: 400;
        line-height: 1.5;
        letter-spacing: .035em;
        text-align: center;
    }

    body .site-footer .footer-cookies {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 14px;
        margin: 0;
        padding: 0;
    }

    body .site-footer .cookie-settings-link {
        margin: 0;
        padding: 0;
        color: rgba(255,255,255,.72);
        font-family: var(--fb-footer-font);
        font-size: 9px;
        font-weight: 400;
        line-height: 1.5;
        letter-spacing: .035em;
        text-align: center;
        white-space: normal;
    }

    body .site-footer > .footer-return-button {
        order: 3;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        margin: 3px auto 0;
        padding: 0;
        border: 0;
        background: transparent;
        color: rgba(255,255,255,.78);
        opacity: .78;
    }

    body .site-footer .footer-return-button span {
        width: 12px;
        height: 12px;
    }
}

@media (max-width: 350px) {

    body .site-footer,
    body .site-footer > .footer-left,
    body .site-footer > .footer-right,
    body .site-footer .cookie-settings-link {
        font-family: var(--fb-footer-font);
        font-size: 9px;
        font-weight: 400;
        line-height: 1.5;
        letter-spacing: .035em;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}
/* FB-CORRECAO-SETAS-ETAPA-4 */

body.fb-footer-visible .gallery-return-button {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(12px) !important;
}

body .site-footer > .footer-return-button {
    z-index: 2;
    pointer-events: auto;
}

body .site-footer .footer-cookies,
body .site-footer .cookie-settings-link {
    position: relative;
    z-index: 2;
}


/* FB_LETS_SHOOT_MENU_V19 */

.menu-overlay .fb-ls-promo-v19 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    box-sizing: border-box;
    width: min(240px, 100%);
    max-width: 100%;
    margin: 14px 0 0;
    padding: 12px 0 0;
    border-top: 1px solid rgba(255,255,255,.18);
    flex-shrink: 0;
}

.menu-overlay .fb-ls-novidade-v19 {
    display: block;
    margin: 0 0 5px;
    color: #ff7070;
    font-family: "Montserrat", sans-serif;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.menu-overlay .fb-ls-link-v19 {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    max-width: 100%;
    color: #fff;
    text-decoration: none;
    cursor: pointer;
}

.menu-overlay .fb-ls-logo-v19 {
    display: block;
    width: 120px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    transform-origin: center;
    transition: transform .3s ease, filter .3s ease;
}

.menu-overlay .fb-ls-cta-v19 {
    display: block;
    color: rgba(255,255,255,.9);
    font-family: "Montserrat", sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: .035em;
    text-transform: uppercase;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-color: rgba(255,255,255,.35);
}

.menu-overlay .fb-ls-link-v19:hover .fb-ls-logo-v19,
.menu-overlay .fb-ls-link-v19:focus-visible .fb-ls-logo-v19 {
    transform: scale(1.04);
    filter: drop-shadow(0 0 12px rgba(255,55,55,.4));
}

.menu-overlay .fb-ls-link-v19:hover .fb-ls-cta-v19,
.menu-overlay .fb-ls-link-v19:focus-visible .fb-ls-cta-v19 {
    color: #fff;
    text-decoration-color: #ff7070;
}

.menu-overlay.open .fb-ls-logo-v19 {
    animation: fbLsPulseV19 .7s ease-in-out 6 alternate;
}

@keyframes fbLsPulseV19 {
    from {
        transform: scale(1);
        filter: drop-shadow(0 0 0 rgba(255,50,50,0));
    }

    to {
        transform: scale(1.055);
        filter: drop-shadow(0 0 13px rgba(255,50,50,.45));
    }
}

@media (max-width: 760px) {

    .menu-overlay .fb-ls-promo-v19 {
        margin-top: 10px;
        padding-top: 9px;
    }

    .menu-overlay .fb-ls-logo-v19 {
        width: 105px;
    }

    .menu-overlay .fb-ls-cta-v19 {
        font-size: 9px;
    }
}

@media (max-height: 740px) {

    .menu-overlay .fb-ls-promo-v19 {
        margin-top: 8px;
        padding-top: 8px;
    }

    .menu-overlay .fb-ls-logo-v19 {
        width: 86px;
    }

    .menu-overlay .fb-ls-novidade-v19 {
        font-size: 9px;
    }

    .menu-overlay .fb-ls-cta-v19 {
        font-size: 9px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .menu-overlay.open .fb-ls-logo-v19 {
        animation: none;
    }
}

/* FB_LETS_SHOOT_PC_V20 */

@media (min-width: 1201px) {

    body .desktop-nav {
        gap: clamp(4px, 0.6vw, 12px);
    }

    body .desktop-nav > a.fb-ls-desktop-v20 {

        position: relative;

        display: inline-flex;

        align-items: center;
        justify-content: center;

        flex: 0 0 auto;

        width: clamp(69px, 6vw, 96px);

        height: var(--header-height, 88px);

        margin: 0;

        padding: 0 !important;

        border: 0;

        z-index: 1;

        text-decoration: none;

        line-height: normal;

    }

    body .desktop-nav > a.fb-ls-desktop-v20::after {
        display: none !important;
    }

    body .desktop-nav > a.fb-ls-desktop-v20 img {

        display: block;

        width: 100%;

        max-height: 76px;

        height: auto;

        object-fit: contain;

        transform-origin: center center;

        animation:
            fbLsPCPulseV20
            0.72s
            ease-in-out
            6
            alternate;

        transition:
            transform 0.28s ease,
            filter 0.28s ease;

    }

    body .desktop-nav > a.fb-ls-desktop-v20:hover img,
    body .desktop-nav > a.fb-ls-desktop-v20:focus-visible img {

        transform: scale(1.12);

        filter:
            drop-shadow(
                0 0 9px rgba(255, 55, 55, 0.42)
            );

    }

}

@keyframes fbLsPCPulseV20 {

    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.045);
    }

}

@media (prefers-reduced-motion: reduce) {

    body .desktop-nav > a.fb-ls-desktop-v20 img {
        animation: none;
    }

}

/* FB-NAVEGACAO-PORTFOLIO-V06R */

@media (max-width: 1200px) {

    html body .menu-overlay .overlay-nav > a.menu-main-link:first-child {
        display: flex !important;
    }

}

@media (min-width: 1201px) {

    html body #portfolio-home .portfolio-grid > .portfolio-item {
        display: flex;
        flex-direction: column;
        aspect-ratio: auto;
        overflow: hidden;
    }

    html body #portfolio-home .portfolio-grid > .portfolio-item > .portfolio-photo {
        position: relative;
        inset: auto;
        order: 0;
        flex: 0 0 auto;
        width: 100%;
        aspect-ratio: 1 / 1;
    }

    html body #portfolio-home .portfolio-grid > .portfolio-item > span {
        position: relative;
        inset: auto;
        order: -1;
        z-index: 2;
        display: flex;
        flex: 0 0 34px;
        align-items: center;
        width: 100%;
        height: 34px;
        padding: 0 13px;
        background: #1a1918;
        color: #fff;
        font-family: "Montserrat", sans-serif;
        font-size: 12px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: .08em;
    }

    html body #portfolio-home .portfolio-grid > .portfolio-item > .portfolio-overlay {
        display: none;
    }

}

/* FB-AFINACAO-MOBILE-V06F */

@media (max-width: 1200px) {

    html body .menu-overlay {
        background: #1a1918 !important;
        background-color: #1a1918 !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }

    html body .menu-overlay .fb-ls-promo-v19 {
        box-sizing: border-box;
        width: 100% !important;
        max-width: 100% !important;
    }

    html body .menu-overlay .fb-ls-link-v19 {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 14px !important;
        width: 100% !important;
        max-width: 100% !important;
        text-decoration: none !important;
    }

    html body .menu-overlay .fb-ls-logo-v19 {
        display: block !important;
        flex: 0 0 106px !important;
        width: 106px !important;
        max-width: 106px !important;
        height: auto !important;
    }

    html body .menu-overlay .fb-ls-cta-v19 {
        display: block !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        color: #fff !important;
        font-family: "Montserrat", sans-serif !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1.45 !important;
        letter-spacing: .015em !important;
        text-transform: uppercase !important;
        text-decoration: none !important;
        overflow-wrap: normal;
    }

}

@media (max-width: 760px) {

    html body .menu-overlay .fb-ls-link-v19 {
        gap: 11px !important;
    }

    html body .menu-overlay .fb-ls-logo-v19 {
        flex-basis: 84px !important;
        width: 84px !important;
        max-width: 84px !important;
    }

    html body .menu-overlay .fb-ls-cta-v19 {
        font-size: 12px !important;
        line-height: 1.4 !important;
    }

}

/* FB-SETA-PARA-LOGO-V06F */

@media (max-width: 1200px) {

    html body .menu-overlay .fb-ls-cta-v19 {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 6px !important;
        text-align: left !important;
    }

    html body .menu-overlay .fb-ls-seta-v06fg {
        display: inline-block;
        flex: 0 0 auto;
        color: #ffffff;
        font-size: 19px;
        font-weight: 400;
        line-height: 1;
    }

    html body .menu-overlay .fb-ls-texto-v06fg {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        min-width: 0;
        white-space: nowrap;
        line-height: 1.35;
    }

}

@media (max-width: 760px) {

    html body .menu-overlay .fb-ls-cta-v19 {
        gap: 5px !important;
    }

    html body .menu-overlay .fb-ls-seta-v06fg {
        font-size: 17px;
    }

}
