/*
 * Premium Ecológica
 * R3C - Responsive
 *
 * Desktop >= 1024px permanece preservado.
 */


/* =========================================================
   TABLET — 768 / 1023
========================================================= */

@media
(max-width: 1023px)
and
(min-width: 768px) {

    /*
     * HEADER
     */

    .premium-r3b-shell {
        width: calc(100% - 30px);
    }

    .premium-r3b-topbar__inner {
        grid-template-columns:
            repeat(3,1fr);
    }

    .premium-r3b-topitem--optional {
        display: none;
    }

    .premium-r3b-topitem {
        padding:
            7px 10px;
    }

    .premium-r3b-topitem strong {
        font-size: 9px;
    }

    .premium-r3b-topitem small {
        font-size: 8px;
    }


    /*
     * Main header becomes 2 levels:
     * logo/actions + search.
     */

    .premium-r3b-main__grid {
        min-height: auto;

        padding:
            12px 0 13px;

        grid-template-columns:
            190px 1fr;

        gap:
            10px 18px;
    }

    .premium-r3b-logo .logo img,
    .page-header .logo img,
    header .logo img {
        max-width:
            185px !important;

        max-height:
            58px !important;
    }

    .premium-r3b-actions {
        justify-self: end;
    }

    .premium-r3b-action__copy {
        display: none;
    }

    .premium-r3b-action {
        min-height: 45px;

        padding: 5px 7px;
    }

    .premium-r3b-action__icon {
        width: 31px;
        height: 31px;

        flex-basis: 31px;
    }

    .premium-r3b-search {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .premium-r3b-search__label {
        display: none;
    }

    .premium-r3b-search .form-input,
    .premium-r3b-search
    .form.minisearch
    button[type="submit"] {
        height: 46px;
    }


    /*
     * Tablet navigation:
     * horizontal category strip.
     */

    .premium-r3b-extra-nav {
        display: none;
    }

    .premium-r3b-nav__inner {
        min-height: 44px;
    }

    .premium-r3b-catalog-menu {
        width: 100%;
        overflow: hidden;
    }

    .premium-r3b-catalog-menu
    .navigation.hidden.lg\:flex {
        display: flex !important;

        width: 100%;
    }

    .premium-r3b-catalog-menu
    .navigation nav {
        width: 100%;

        overflow-x: auto;
        overflow-y: hidden;

        scrollbar-width: none;
    }

    .premium-r3b-catalog-menu
    .navigation nav::-webkit-scrollbar {
        display: none;
    }

    .premium-r3b-catalog-menu
    .navigation nav > ul {
        width: max-content;

        display: flex !important;

        flex-wrap: nowrap !important;

        gap: 0 !important;
    }

    .premium-r3b-catalog-menu
    .navigation
    li.level-0 {
        flex: 0 0 auto;
    }

    .premium-r3b-catalog-menu
    .navigation
    li.level-0
    a.level-0 {
        padding:
            13px 11px !important;

        font-size:
            10.5px !important;

        white-space: nowrap;
    }

    .premium-r3b-catalog-menu
    .navigation
    li.level-0
    ul {
        display: none !important;
    }


    /*
     * HOME WIDTH
     */

    .premium-home-r3 > section,
    .premium-home-r3 > .premium-r3-trust,
    .premium-home-r3 .premium-products {
        width:
            calc(100vw - 34px) !important;
    }


    /*
     * SPECIES
     */

    .premium-r32-species-grid {
        grid-template-columns:
            repeat(5, minmax(0,1fr));

        gap: 10px;
    }

    .premium-r32-species-card {
        min-height: 142px;
    }

    .premium-r32-species-image {
        width: 90px;
        height: 90px;
    }


    /*
     * HERO
     */

    .premium-home-r3 > .premium-r31-hero {
        padding:
            42px 38px;

        gap: 30px;
    }

    .premium-r31-hero__copy h1 {
        font-size: 44px;
    }

    .premium-r31-hero__visual {
        min-height: 320px;
    }


    /*
     * PRODUCT/FAMILY CARDS
     */

    .premium-r31-family-grid,
    .premium-home-r3
    .premium-product-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap: 14px !important;
    }

    .premium-r31-family-image {
        height: 225px;
    }

    .premium-r31-family-image img {
        height: 185px;
    }

    .premium-home-r3
    .premium-product-card__image {
        min-height:
            235px !important;
    }

    .premium-home-r3
    .premium-product-card__image img {
        height:
            195px !important;
    }


    /*
     * LOWER CONTENT
     */

    .premium-r3-journey-grid,
    .premium-r3-needs-grid,
    .premium-r3-support-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;
    }

    .premium-r3-why-grid {
        grid-template-columns:
            repeat(3,1fr)
            !important;
    }

}


/* =========================================================
   MOBILE — <= 767
========================================================= */

@media (max-width: 767px) {

    /*
     * GLOBAL WIDTH
     */

    .premium-r3b-shell {
        width:
            calc(100% - 20px);
    }

    .premium-home-r3 > section,
    .premium-home-r3 > .premium-r3-trust,
    .premium-home-r3 .premium-products {
        width:
            calc(100vw - 22px) !important;
    }


    /*
     * TOP BAR
     */

    .premium-r3b-topbar__inner {
        min-height: 34px;

        grid-template-columns:
            repeat(3,1fr);
    }

    .premium-r3b-topitem {
        min-height: 34px;

        padding:
            6px 3px;
    }

    .premium-r3b-topitem > span,
    .premium-r3b-topitem small,
    .premium-r3b-topitem--optional {
        display: none;
    }

    .premium-r3b-topitem strong {
        display: block;

        font-size: 7.5px;
        line-height: 1.15;

        text-align: center;
    }


    /*
     * MAIN HEADER
     */

    .premium-r3b-main__grid {
        min-height: auto;

        padding:
            10px 0 11px;

        grid-template-columns:
            1fr auto;

        gap:
            9px 8px;
    }

    .premium-r3b-logo .logo img,
    .page-header .logo img,
    header .logo img {
        max-width:
            158px !important;

        max-height:
            50px !important;
    }

    .premium-r3b-actions {
        gap: 1px;
    }

    .premium-r3b-action {
        min-height: 42px;

        padding: 4px;
    }

    .premium-r3b-action__copy {
        display: none;
    }

    .premium-r3b-action__icon {
        width: 29px;
        height: 29px;

        flex: 0 0 29px;
    }

    .premium-r3b-action__icon svg {
        width: 25px;
        height: 25px;
    }

    .premium-r3b-action--whatsapp {
        display: none;
    }


    /*
     * SEARCH
     */

    .premium-r3b-search {
        grid-column:
            1 / -1;

        grid-row: 2;
    }

    .premium-r3b-search__label {
        display: none;
    }

    .premium-r3b-search
    .form-input {
        height: 44px;

        padding-inline:
            14px;

        font-size: 12px;

        border-radius:
            11px 0 0 11px !important;
    }

    .premium-r3b-search
    .form.minisearch
    button[type="submit"] {
        width: 46px;
        min-width: 46px;
        height: 44px;

        border-radius:
            0 11px 11px 0 !important;
    }


    /*
     * MOBILE CATEGORY STRIP
     *
     * Mantemos as categorias do Magento,
     * mas sem dropdown no celular.
     */

    .premium-r3b-extra-nav {
        display: none !important;
    }

    .premium-r3b-nav {
        overflow: hidden;
    }

    .premium-r3b-nav__inner {
        min-height: 42px;

        width: 100%;

        padding-left: 10px;
        padding-right: 10px;
    }

    .premium-r3b-catalog-menu {
        width: 100%;

        overflow: hidden;
    }

    .premium-r3b-catalog-menu
    .navigation.hidden.lg\:flex {
        display: flex !important;

        width: 100%;
    }

    .premium-r3b-catalog-menu
    .navigation nav {
        width: 100%;

        overflow-x: auto;
        overflow-y: hidden;

        -webkit-overflow-scrolling: touch;

        scrollbar-width: none;
    }

    .premium-r3b-catalog-menu
    .navigation nav::-webkit-scrollbar {
        display: none;
    }

    .premium-r3b-catalog-menu
    .navigation nav > ul {
        width: max-content;

        display: flex !important;

        flex-wrap: nowrap !important;

        gap: 0 !important;

        padding: 0 !important;
    }

    .premium-r3b-catalog-menu
    .navigation
    li.level-0 {
        position: relative;

        flex:
            0 0 auto;
    }

    .premium-r3b-catalog-menu
    .navigation
    li.level-0
    a.level-0 {
        min-height: 42px;

        padding:
            13px 10px !important;

        display: flex;
        align-items: center;

        font-size:
            10px !important;

        white-space: nowrap;
    }

    .premium-r3b-catalog-menu
    .navigation
    li.level-0
    ul {
        display: none !important;
    }


    /*
     * SLIDER
     *
     * Mantém a arte inteira.
     * Quando houver imagem mobile específica,
     * ela já será usada pelo <picture>.
     */

    .premium-home-r3
    > .premium-r32-slider {
        width:
            calc(
                100vw - 10px
            ) !important;

        margin-top:
            8px !important;

        border-radius: 12px;
    }

    .premium-r32-arrow {
        width: 32px;
        height: 42px;

        font-size: 25px;

        border-radius: 9px;
    }

    .premium-r32-arrow--prev {
        left: 5px;
    }

    .premium-r32-arrow--next {
        right: 5px;
    }

    .premium-r32-dots {
        bottom: 5px;

        padding:
            5px 7px;
    }

    .premium-r32-dots button {
        width: 7px;
        height: 7px;
    }

    .premium-r32-dots
    button.is-active {
        width: 22px;
    }


    /*
     * TRUST BAR
     */

    .premium-r31-trust {
        grid-template-columns:
            repeat(2,1fr);
    }

    .premium-r31-trust > div {
        padding:
            10px 9px;

        gap: 7px;
    }

    .premium-r31-trust
    > div > b {
        width: 27px;
        height: 27px;

        flex-basis: 27px;
    }

    .premium-r31-trust strong {
        font-size: 9px;
    }

    .premium-r31-trust span {
        font-size: 8px;
    }


    /*
     * SPECIES
     */

    .premium-home-r3
    > .premium-r32-species {
        padding-top: 39px;
        padding-bottom: 8px;
    }

    .premium-r31-heading h2 {
        font-size: 26px;
    }

    .premium-r31-heading p {
        font-size: 12px;
        line-height: 1.5;
    }

    .premium-r32-species-grid {
        margin-top: 20px;

        grid-template-columns:
            repeat(2,minmax(0,1fr));

        gap: 9px;
    }

    .premium-r32-species-card {
        min-height: 124px;

        padding:
            8px 7px 10px;
    }

    .premium-r32-species-image {
        width: 82px;
        height: 82px;
    }

    .premium-r32-species-card strong {
        margin-top: 5px;

        font-size: 11px;
    }


    /*
     * HERO
     */

    .premium-home-r3
    > .premium-r31-hero {
        margin-top: 30px;

        padding:
            30px 20px 24px;

        gap: 20px;

        border-radius: 18px;
    }

    .premium-r31-hero__copy h1 {
        font-size: 36px;

        line-height: .97;
    }

    .premium-r31-hero__copy > p {
        margin:
            15px 0 18px;

        font-size: 13px;
        line-height: 1.6;
    }

    .premium-r31-hero__actions {
        gap: 7px;
    }

    .premium-r31-btn {
        min-height: 41px;

        padding:
            0 13px;

        font-size: 10px;
    }

    .premium-r31-hero__proof {
        margin-top: 20px;

        grid-template-columns:
            repeat(3,1fr);

        gap: 5px;
    }

    .premium-r31-hero__proof
    > div {
        flex-direction: column;

        gap: 4px;

        text-align: center;
    }

    .premium-r31-hero__proof
    > div > b {
        width: 28px;
        height: 28px;
    }

    .premium-r31-hero__proof span {
        font-size: 8px;
    }

    .premium-r31-hero__proof strong {
        font-size: 9px;
    }

    .premium-r31-hero__visual {
        min-height: 245px;
    }

    .premium-r31-hero__visual
    > img {
        max-height: 245px;
    }

    .premium-r31-hero__callout {
        right: 0;
        bottom: 0;

        max-width: 165px;

        padding:
            10px 12px;
    }

    .premium-r31-hero__callout strong {
        font-size: 9px;
    }

    .premium-r31-hero__callout span {
        font-size: 8px;
    }


    /*
     * SECTION SPACING
     */

    .premium-home-r3
    > .premium-r31-families,
    .premium-home-r3
    .premium-products,
    .premium-home-r3
    > .premium-choice,
    .premium-r3-needs,
    .premium-r3-why,
    .premium-r3-authority,
    .premium-home-r3
    > .premium-r31-authority {
        margin-top:
            42px !important;
    }


    /*
     * FAMILIES
     *
     * 2 columns on phone.
     */

    .premium-r31-family-grid {
        margin-top: 18px;

        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap:
            9px !important;
    }

    .premium-r31-family-card {
        border-radius: 14px;
    }

    .premium-r31-family-number {
        left: 8px;
        top: 8px;

        width: 27px;
        height: 27px;

        font-size: 8px;
    }

    .premium-r31-family-image {
        height: 145px;

        padding: 12px;
    }

    .premium-r31-family-image img {
        height: 120px;
    }

    .premium-r31-family-copy {
        padding:
            12px 11px 13px;
    }

    .premium-r31-family-copy
    > strong {
        font-size: 13px;
    }

    .premium-r31-family-copy p {
        min-height: 44px;

        margin:
            5px 0 8px;

        font-size: 9px;
        line-height: 1.45;
    }

    .premium-r31-family-copy b {
        font-size: 9px;
    }


    /*
     * PRODUCTS
     *
     * 2 columns instead of long 1-column page.
     */

    .premium-home-r3
    .premium-product-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap:
            9px !important;
    }

    .premium-home-r3
    .premium-product-card {
        border-radius: 14px;
    }

    .premium-home-r3
    .premium-product-card__image {
        min-height:
            145px !important;

        padding:
            9px !important;
    }

    .premium-home-r3
    .premium-product-card__image img {
        height:
            125px !important;
    }

    .premium-home-r3
    .premium-product-card__body {
        padding:
            11px !important;
    }

    .premium-home-r3
    .premium-product-card__sku {
        font-size: 7px;
    }

    .premium-home-r3
    .premium-product-card__name {
        min-height:
            47px !important;

        font-size:
            10.5px !important;

        line-height: 1.35;
    }

    .premium-home-r3
    .premium-product-card__price {
        min-height:
            34px !important;

        margin-top: 8px;

        font-size:
            13px !important;
    }

    .premium-home-r3
    .premium-product-card__actions {
        padding-top: 5px;
    }

    .premium-home-r3
    .premium-product-card__buy {
        min-height:
            35px !important;

        font-size: 9px;
    }


    /*
     * CHOOSER
     */

    .premium-home-r3
    > .premium-choice {
        padding:
            27px 19px !important;

        gap: 22px;

        border-radius: 18px;
    }

    .premium-home-r3
    .premium-choice__intro h2 {
        font-size:
            34px !important;
    }

    .premium-home-r3
    .premium-choice__intro p {
        margin-top: 11px;

        font-size: 11px;
        line-height: 1.55;
    }

    .premium-home-r3
    .premium-choice-card {
        min-height: 72px;

        padding:
            14px 32px 14px 49px
            !important;
    }

    .premium-home-r3
    .premium-choice-card__number {
        left: 11px;
        top: 14px;

        width: 26px;
        height: 26px;
    }

    .premium-home-r3
    .premium-choice-card strong {
        font-size: 11px;
    }


    /*
     * FEATURE
     */

    .premium-home-r3
    > .premium-r31-feature {
        min-height: 0;

        grid-template-columns:
            1fr;
    }

    .premium-r31-feature__visual {
        min-height: 190px;
    }

    .premium-r31-feature__visual img {
        max-height: 170px;
    }

    .premium-r31-feature__copy {
        padding:
            25px 21px;
    }

    .premium-r31-feature__copy h2 {
        font-size: 27px;
    }

    .premium-r31-feature__copy p {
        margin:
            12px 0 16px;

        font-size: 11px;
    }


    /*
     * JOURNEY
     */

    .premium-r3-journey,
    .premium-r3-support {
        padding-top:
            50px !important;
    }

    .premium-r3-journey-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap:
            9px !important;
    }

    .premium-r3-step {
        min-height:
            155px !important;

        padding:
            25px 15px 15px
            !important;
    }

    .premium-r3-step-icon {
        margin:
            10px 0 8px !important;

        font-size:
            29px !important;
    }

    .premium-r3-step strong {
        font-size:
            12px !important;
    }

    .premium-r3-step p {
        font-size: 9px;
    }


    /*
     * NEEDS
     */

    .premium-r3-needs {
        padding:
            30px 15px !important;
    }

    .premium-r3-needs-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap:
            8px !important;
    }

    .premium-r3-need-card {
        min-height:
            148px !important;

        padding:
            13px !important;

        display: block;
    }

    .premium-r3-need-card
    > span {
        width: 31px;
        height: 31px;

        margin-bottom: 8px;
    }

    .premium-r3-need-card strong {
        font-size: 10px;
    }

    .premium-r3-need-card p {
        min-height: 45px;

        font-size: 8.5px;
    }

    .premium-r3-need-card b {
        font-size: 8.5px;
    }


    /*
     * WHY PREMIUM
     */

    .premium-r3-why {
        padding:
            28px 14px !important;
    }

    .premium-r3-why h2 {
        margin-bottom: 22px;

        font-size:
            21px !important;
    }

    .premium-r3-why-grid {
        grid-template-columns:
            repeat(2,1fr)
            !important;

        gap:
            18px 8px;
    }

    .premium-r3-why-grid strong {
        font-size: 10px;
    }

    .premium-r3-why-grid small {
        font-size: 8px;
    }


    /*
     * SUPPORT
     */

    .premium-r3-support-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr))
            !important;

        gap:
            8px !important;
    }

    .premium-r3-support-grid a {
        min-height:
            145px !important;

        padding:
            14px !important;
    }

    .premium-r3-support-grid
    a > span {
        font-size: 22px;
    }

    .premium-r3-support-grid strong {
        font-size: 10px;
    }

    .premium-r3-support-grid small {
        font-size: 8.5px;
    }

    .premium-r3-support-grid b {
        font-size: 8.5px;
    }


    /*
     * AUTHORITY
     */

    .premium-home-r3
    > .premium-r31-authority {
        padding: 0;

        grid-template-columns:
            1fr;

        gap: 0;

        border-radius: 18px;
    }

    .premium-r31-authority__copy {
        padding:
            28px 20px 18px;
    }

    .premium-r31-authority__copy h2 {
        font-size: 30px;
    }

    .premium-r31-authority__copy p {
        margin:
            12px 0 16px;

        font-size: 11px;
    }

    .premium-r31-authority__stats {
        padding:
            0 20px 18px;

        grid-template-columns:
            repeat(2,1fr);
    }

    .premium-r31-authority__stats
    > div {
        min-height: 78px;

        padding: 12px;
    }

    .premium-r31-authority__stats strong {
        font-size: 16px;
    }

    .premium-r31-authority__stats span {
        font-size: 8px;
    }

    .premium-r31-authority__visual {
        min-height: 190px;

        margin:
            0 20px 20px;

        display: flex;
    }

    .premium-r31-authority__visual img {
        height: 175px;
    }


    /*
     * WHATSAPP
     */

    .premium-home-r3
    > .premium-r31-whatsapp {
        margin-top: 28px;
        margin-bottom: 28px;

        padding:
            17px 16px;

        grid-template-columns:
            auto 1fr;

        gap: 10px;

        text-align: left;
    }

    .premium-r31-whatsapp__icon {
        width: 44px;
        height: 44px;

        margin: 0;
    }

    .premium-r31-whatsapp__icon svg {
        width: 28px;
        height: 28px;
    }

    .premium-r31-whatsapp h2 {
        font-size: 17px;
    }

    .premium-r31-whatsapp p {
        font-size: 9px;
    }

    .premium-r31-whatsapp > a {
        grid-column:
            1 / -1;

        width: 100%;

        min-height: 40px;

        justify-content: center;

        font-size: 10px;
    }


    /*
     * FOOTER
     */

    .premium-footer-r3b {
        width:
            calc(
                100% - 28px
            );

        padding-top: 35px;
    }

    .premium-footer-r3b__grid {
        grid-template-columns:
            repeat(2,1fr);

        gap:
            26px 18px;
    }

    .premium-footer-r3b__brand,
    .premium-footer-r3b__contact-column {
        grid-column:
            1 / -1;
    }

    .premium-footer-r3b__brand strong {
        font-size: 20px;
    }

    .premium-footer-r3b__brand p,
    .premium-footer-r3b a,
    .premium-footer-r3b__contact {
        font-size: 10px;
    }

    .premium-footer-r3b__bottom {
        margin-top: 28px;

        padding-top: 15px;

        font-size: 8px;
    }

}


/* =========================================================
   VERY SMALL PHONES
========================================================= */

@media (max-width: 350px) {

    /*
     * Fall back to one column where
     * two cards would become too narrow.
     */

    .premium-r31-family-grid,
    .premium-home-r3
    .premium-product-grid,
    .premium-r3-journey-grid,
    .premium-r3-needs-grid,
    .premium-r3-support-grid {
        grid-template-columns:
            1fr !important;
    }

}

/* ============================================================
   PREMIUM_HOME_SLIDER_NO_CROP_R34
   Banner deve aparecer inteiro.
   Nenhum object-fit: cover / zoom / crop.
   ============================================================ */

html body.cms-home
.premium-home-r3
.premium-r32-slider {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: visible !important;
}

html body.cms-home
.premium-home-r3
.premium-r32-slider
.premium-r32-slide {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
}

html body.cms-home
.premium-home-r3
.premium-r32-slider
.premium-r32-slide > a,

html body.cms-home
.premium-home-r3
.premium-r32-slider
.premium-r32-slide > picture,

html body.cms-home
.premium-home-r3
.premium-r32-slider
.premium-r32-slide > a > picture {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
}

html body.cms-home
.premium-home-r3
.premium-r32-slider
.premium-r32-slide img {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    min-width: 0 !important;
    min-height: 0 !important;

    max-width: 100% !important;
    max-height: none !important;

    object-fit: contain !important;
    object-position: center center !important;

    transform: none !important;
    scale: none !important;

    margin: 0 !important;
    inset: auto !important;

    position: relative !important;
}

/* desktop */
@media (min-width: 768px) {

    html body.cms-home
    .premium-home-r3
    .premium-r32-slider
    .premium-r32-slide img {
        width: 100% !important;
        height: auto !important;
    }
}

/* mobile */
@media (max-width: 767px) {

    html body.cms-home
    .premium-home-r3
    .premium-r32-slider,
    
    html body.cms-home
    .premium-home-r3
    .premium-r32-slider
    .premium-r32-slide {
        height: auto !important;
        aspect-ratio: auto !important;
    }

    html body.cms-home
    .premium-home-r3
    .premium-r32-slider
    .premium-r32-slide img {
        width: 100% !important;
        height: auto !important;
        object-fit: contain !important;
    }
}



/* =========================================================
   PREMIUM_HOME_HUMIDITY_CSS_R16E
   Destaque comercial para controle de umidade na Home
   ========================================================= */

.premium-home-r3
.premium-product-card--humidity {
    position: relative;

    border:
        1px solid #d8ad2c;

    box-shadow:
        0 13px 30px rgba(13, 72, 51, .08),
        0 0 0 1px rgba(216, 173, 44, .17);

    overflow: visible;

    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}


.premium-home-r3
.premium-product-card--humidity:hover {
    border-color: #c89b16;

    box-shadow:
        0 17px 36px rgba(13, 72, 51, .13),
        0 0 0 1px rgba(200, 155, 22, .28);
}


/* Badge */

.premium-home-r3
.premium-home-humidity-badge {
    position: absolute;

    top: 11px;
    left: 11px;
    z-index: 10;

    display: inline-flex;
    align-items: center;

    gap: 6px;

    padding:
        6px 10px;

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            #f8d86a 0%,
            #eabf3b 100%
        );

    color:
        #173b2e;

    font-size:
        9px;

    line-height:
        1;

    font-weight:
        800;

    letter-spacing:
        .025em;

    text-transform:
        uppercase;

    box-shadow:
        0 6px 14px
        rgba(184, 137, 15, .17);
}


.premium-home-r3
.premium-home-humidity-badge svg {
    flex:
        0 0 auto;
}


/* Faixa de benefício */

.premium-home-r3
.premium-home-humidity-benefit {
    display: flex;
    align-items: center;

    gap: 8px;

    margin:
        9px 0 10px;

    padding:
        8px 9px;

    border:
        1px solid
        rgba(220, 177, 53, .24);

    border-radius:
        7px;

    background:
        linear-gradient(
            100deg,
            rgba(252, 235, 180, .68),
            rgba(255, 248, 225, .86)
        );
}


.premium-home-r3
.premium-home-humidity-benefit__star {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex:
        0 0 auto;

    width:
        20px;

    height:
        20px;

    color:
        #d4a316;

    font-size:
        14px;
}


.premium-home-r3
.premium-home-humidity-benefit__copy {
    display: flex;
    flex-direction: column;

    gap:
        1px;

    min-width:
        0;
}


.premium-home-r3
.premium-home-humidity-benefit__copy strong {
    color:
        #193a2f;

    font-size:
        10px;

    line-height:
        1.2;

    font-weight:
        800;
}


.premium-home-r3
.premium-home-humidity-benefit__copy small {
    color:
        #65756f;

    font-size:
        8px;

    line-height:
        1.25;
}


/* Deixa espaço para o selo na área de imagem */

.premium-home-r3
.premium-product-card--humidity
.premium-product-card__image {
    padding-top:
        15px;
}


@media (max-width: 767px) {

    .premium-home-r3
    .premium-home-humidity-badge {
        top:
            8px;

        left:
            8px;

        padding:
            5px 8px;

        font-size:
            8px;
    }

    .premium-home-r3
    .premium-home-humidity-benefit {
        padding:
            7px 8px;
    }
}



/* ==================================================
   PREMIUM_HOME_CREATION_HUB_R5_CSS
   ================================================== */


.premium-home-creation {
    position:relative;

    overflow:hidden;

    padding:76px 0 80px;

    background:
        radial-gradient(
            circle at 88% 2%,
            rgba(244, 202, 20, .17),
            transparent 26%
        ),
        radial-gradient(
            circle at 6% 100%,
            rgba(20, 126, 87, .10),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #f3faf6 0%,
            #ffffff 48%,
            #fffbed 100%
        );
}


.premium-home-creation:before {
    content:"";

    position:absolute;

    top:26px;
    right:-62px;

    width:185px;
    height:185px;

    border:1px solid rgba(10,105,71,.07);
    border-radius:50%;
}


.premium-home-creation__shell {
    position:relative;
    z-index:1;

    width:min(
        1180px,
        calc(100% - 40px)
    );

    margin:0 auto;
}


.premium-home-creation__intro {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:45px;

    margin-bottom:37px;
}


.premium-home-creation__copy {
    max-width:680px;
}


.premium-home-creation__kicker {
    display:inline-flex;
    align-items:center;
    gap:8px;

    color:#087553;

    font-size:10px;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
}


.premium-home-creation__kicker:before {
    content:"";

    width:24px;
    height:3px;

    border-radius:999px;

    background:#f1c400;
}


.premium-home-creation__copy h2 {
    margin:10px 0 0;

    color:#064b37;

    font-size:clamp(
        34px,
        4vw,
        49px
    );

    line-height:1.02;
    letter-spacing:-.043em;
}


.premium-home-creation__copy p {
    max-width:650px;

    margin:17px 0 0;

    color:#65766f;

    font-size:15px;
    line-height:1.7;
}


.premium-home-creation__actions {
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:15px;

    flex:0 0 auto;
}


.premium-home-creation__facts {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:8px;

    color:#75847e;

    font-size:9px;
    font-weight:700;
}


.premium-home-creation__facts span {
    display:flex;
    align-items:baseline;
    gap:4px;
}


.premium-home-creation__facts strong {
    color:#076648;

    font-size:17px;
}


.premium-home-creation__facts i {
    width:3px;
    height:3px;

    border-radius:50%;

    background:#d1a900;
}


.premium-home-creation__all {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    min-height:43px;
    padding:0 18px;

    border:1px solid #096a4b;
    border-radius:999px;

    background:#fff;
    color:#075d43;

    font-size:11px;
    font-weight:900;

    box-shadow:
        0 8px 18px rgba(17,74,53,.06);

    transition:
        background .2s ease,
        color .2s ease,
        transform .2s ease;
}


.premium-home-creation__all:hover {
    transform:translateY(-1px);

    background:#076447;
    color:#fff;

    text-decoration:none;
}


.premium-home-creation__all span {
    font-size:15px;
}


/* ================================
   CARROSSEL
   ================================ */


.premium-home-creation__carousel {
    position:relative;

    padding:0 46px;
}


.premium-home-creation__track {
    display:flex;
    gap:15px;

    overflow-x:auto;

    padding:5px 3px 18px;

    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;

    overscroll-behavior-inline:contain;

    scrollbar-width:none;
}


.premium-home-creation__track::-webkit-scrollbar {
    display:none;
}


.premium-home-creation-card {
    position:relative;

    display:flex;
    flex-direction:column;

    flex:0 0 210px;

    width:210px;
    min-width:210px;
    min-height:278px;

    overflow:hidden;

    border:1px solid #dce9e2;
    border-radius:20px;

    background:rgba(
        255,
        255,
        255,
        .96
    );

    color:#173b31;

    scroll-snap-align:start;

    box-shadow:
        0 10px 27px rgba(
            19,
            72,
            54,
            .065
        );

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}


.premium-home-creation-card:hover {
    transform:translateY(-4px);

    border-color:#9cc8b4;

    box-shadow:
        0 19px 38px rgba(
            16,
            72,
            52,
            .11
        );

    text-decoration:none;
}


.premium-home-creation-card__visual {
    display:grid;
    place-items:center;

    height:132px;

    background:
        radial-gradient(
            circle at 50% 50%,
            #eef8f3 0,
            #f9fcfa 61%,
            #fff 100%
        );
}


/*
 * Retrato circular consistente
 * com a Central e os guias.
 */
.premium-home-creation-card__portrait {
    position:relative;

    display:grid;
    place-items:center;

    width:104px;
    height:104px;

    margin:0;

    border-radius:50%;
}


.premium-home-creation-card__portrait:before {
    content:"";

    position:absolute;

    top:3px;
    right:2px;

    z-index:3;

    width:16px;
    height:16px;

    border:3px solid #fff;
    border-radius:50%;

    background:#f1c400;

    box-shadow:
        0 2px 6px rgba(
            0,
            0,
            0,
            .12
        );
}


.premium-home-creation-card__portrait img {
    display:block;

    width:104px!important;
    height:104px!important;

    object-fit:cover;

    border:5px solid #fff;
    border-radius:50%;

    box-shadow:
        0 11px 24px rgba(
            14,
            69,
            50,
            .15
        );

    transition:
        transform .25s ease;
}


.premium-home-creation-card:hover
.premium-home-creation-card__portrait img {
    transform:scale(1.035);
}


.premium-home-creation-card__initial {
    display:grid;
    place-items:center;

    width:104px;
    height:104px;

    border:5px solid #fff;
    border-radius:50%;

    background:
        linear-gradient(
            145deg,
            #dcefe5,
            #f2faf6
        );

    color:#08704e;

    font-size:31px;
    font-weight:900;

    box-shadow:
        0 11px 24px rgba(
            14,
            69,
            50,
            .12
        );
}


.premium-home-creation-card__credit {
    position:absolute;

    right:0;
    bottom:2px;

    z-index:4;

    display:grid;
    place-items:center;

    width:16px;
    height:16px;

    border:2px solid #fff;
    border-radius:50%;

    background:#315f4e;
    color:#fff;

    font-family:Georgia,serif;
    font-size:8px;
    font-style:italic;
    font-weight:700;
}


.premium-home-creation-card__body {
    display:flex;
    flex:1;
    flex-direction:column;

    min-width:0;

    padding:17px 17px 16px;
}


.premium-home-creation-card__body>span {
    overflow:hidden;

    color:#09805a;

    font-size:8px;
    font-weight:900;
    letter-spacing:.05em;
    text-transform:uppercase;

    text-overflow:ellipsis;
    white-space:nowrap;
}


.premium-home-creation-card__body>strong {
    margin-top:7px;

    color:#084b37;

    font-size:19px;
    line-height:1.15;
}


.premium-home-creation-card__body>em {
    display:-webkit-box;

    overflow:hidden;

    margin-top:4px;

    color:#7a8983;

    font-size:9px;
    line-height:1.3;

    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}


.premium-home-creation-card__body>b {
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-top:auto;
    padding-top:15px;

    border-top:1px solid #edf3f0;

    color:#396658;

    font-size:9px;
    font-weight:900;
}


.premium-home-creation-card__body>b i {
    color:#08704e;

    font-size:14px;
    font-style:normal;
}


/* setas */


.premium-home-creation__arrow {
    position:absolute;

    top:50%;
    z-index:5;

    display:grid;
    place-items:center;

    width:38px;
    height:38px;

    padding:0;

    transform:translateY(-50%);

    border:1px solid #cadaD2;
    border-radius:50%;

    background:rgba(
        255,
        255,
        255,
        .96
    );

    color:#075d43;

    font-size:27px;
    line-height:1;

    box-shadow:
        0 8px 18px rgba(
            15,
            64,
            48,
            .10
        );

    cursor:pointer;
}


.premium-home-creation__arrow:hover {
    border-color:#076447;

    background:#076447;
    color:#fff;
}


.premium-home-creation__arrow--prev {
    left:0;
}


.premium-home-creation__arrow--next {
    right:0;
}


.premium-home-creation__mobile-note {
    display:none;
}


/* ================================
   TABLET
   ================================ */

@media (max-width:1023px) {

    .premium-home-creation__intro {
        align-items:flex-start;
        flex-direction:column;
        gap:23px;
    }


    .premium-home-creation__actions {
        align-items:flex-start;
    }


    .premium-home-creation__facts {
        justify-content:flex-start;
    }

}


/* ================================
   MOBILE
   ================================ */

@media (max-width:639px) {

    .premium-home-creation {
        padding:
            54px
            0
            57px;
    }


    .premium-home-creation__shell {
        width:calc(100% - 28px);
    }


    .premium-home-creation__copy h2 {
        font-size:36px;
    }


    .premium-home-creation__copy p {
        font-size:14px;
    }


    .premium-home-creation__facts {
        gap:7px;
    }


    .premium-home-creation__facts span:not(:first-child),
    .premium-home-creation__facts i {
        display:none;
    }


    .premium-home-creation__all {
        min-height:42px;
    }


    .premium-home-creation__carousel {
        width:calc(100% + 14px);

        padding:0;

        overflow:visible;
    }


    .premium-home-creation__track {
        width:100%;

        padding:
            5px
            40px
            15px
            0;
    }


    .premium-home-creation-card {
        flex-basis:196px;

        width:196px;
        min-width:196px;
        min-height:264px;
    }


    .premium-home-creation-card__visual {
        height:123px;
    }


    .premium-home-creation-card__portrait,
    .premium-home-creation-card__portrait img,
    .premium-home-creation-card__initial {
        width:94px!important;
        height:94px!important;
    }


    .premium-home-creation__arrow {
        display:none;
    }


    .premium-home-creation__mobile-note {
        display:flex;
        align-items:center;
        justify-content:center;
        gap:8px;

        margin-top:3px;

        color:#83918c;

        font-size:8px;
        font-weight:700;
    }

}

