html,
body{
    margin:0;
    padding:0;
    width:100%;
    min-width:0;
    overflow-x:hidden;
}

body.pricing-public-page{
    min-height:0;
    background:transparent;
}

.pricing-public-root{
    width:100%;
    margin:0;
    padding:0;
}

.pricing-public-page .live-preview-shell{
    width:100%;
    min-height:0;
    padding:clamp(18px,3vw,34px);
    box-sizing:border-box;
    border-radius:0;
}

.public-heading{
    max-width:900px;
    margin-left:auto;
    margin-right:auto;
}

.public-heading h1{
    margin:7px 0 8px;
    font-size:clamp(28px,4vw,46px);
    line-height:1.08;
}

.public-cycle-nav{
    flex-wrap:wrap;
}

.public-plan-grid{
    width:min(1400px,100%);
    margin-left:auto;
    margin-right:auto;
    align-items:stretch;
}

.public-plan-card{
    height:100%;
}

.public-plan-description{
    min-height:0!important;
}

.public-price-unavailable{
    display:none;
    padding:12px 0;
    color:var(--pricing-muted-final,var(--muted));
    font-size:12px;
    font-weight:700;
}

.public-price-unavailable.active{
    display:block;
}

.public-contract-backdrop{
    position:fixed;
}

.pricing-public-page .contract-modal{
    color:var(--pricing-text-final,var(--text));
    background:var(--pricing-card-final,var(--panel));
    border-color:var(--pricing-border-final,var(--line));
}

.pricing-public-page .preview-modal-head,
.pricing-public-page .preview-modal-foot{
    background:var(--pricing-card-final,var(--panel));
    border-color:var(--pricing-border-final,var(--line));
}

.pricing-public-page .contract-option{
    background:var(--pricing-card-final,var(--panel));
    border-color:var(--pricing-border-final,var(--line));
}

@media(max-width:700px){
    .pricing-public-page .live-preview-shell{
        padding:18px 0 22px;
    }

    .public-heading,
    .public-cycle-nav{
        padding-left:16px;
        padding-right:16px;
    }

    .public-plan-grid{
        display:flex;
        overflow-x:auto;
        gap:14px;
        padding:4px 12vw 16px 16px;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
        -webkit-overflow-scrolling:touch;
    }

    .public-plan-grid::-webkit-scrollbar{
        display:none;
    }

    .public-plan-card{
        flex:0 0 82vw;
        max-width:340px;
        scroll-snap-align:start;
    }
}

/* V43 - Fundo correto do iframe */
body.pricing-public-page.pricing-theme-light,
body.pricing-public-page.pricing-theme-light .pricing-public-root,
body.pricing-public-page.pricing-theme-light .live-preview-shell{
    background:#ffffff !important;
}

body.pricing-public-page.pricing-theme-dark,
body.pricing-public-page.pricing-theme-dark .pricing-public-root{
    background:var(--pricing-bg-final,#081525);
}

/* V63 - continuidade visual do carrossel no mobile */
@media(max-width:700px){
    .public-plan-grid{
        padding-right:22vw !important;
    }

    .public-plan-card{
        flex-basis:72vw !important;
        max-width:315px;
    }

    .public-plan-grid.mobile-peek-active{
        scroll-snap-type:none !important;
    }
}
