/* Scope these rules to maintained NBN detail pages, not Elementor globally. */
.rbe-sales-plan .elementor-widget-icon-list .elementor-inline-items {
    display:flex; flex-wrap:wrap; gap:10px 12px; margin:0 !important; padding:0; width:100%;
}
.rbe-sales-plan .elementor-widget-icon-list .elementor-inline-item {
    margin:0 !important; max-width:100%; min-width:0;
}
.rbe-sales-plan .elementor-widget-icon-list .elementor-icon-list-text { min-width:0; overflow-wrap:anywhere; }
.rbe-sales-plan .rbe-sales-facts { margin:18px 0 0; color:#fff; font-size:14px; line-height:1.5; }
.rbe-sales-plan .rbe-sales-facts p { margin:0; color:inherit; }
.rbe-sales-plan .rbe-sales-facts .rbe-sales-price { margin-bottom:6px; }
.rbe-sales-plan .rbe-sales-price strong { font-size:36px; line-height:1.2; font-weight:800; }
.rbe-sales-plan .rbe-sales-facts a { color:#fff; text-decoration:underline; display:inline-block; }
.rbe-sales-plan .elementor-element-cf23d2e1 { padding-top:36px !important; padding-bottom:36px !important; }
.rbe-sales-plan .elementor-widget-icon-box .elementor-icon-box-icon { margin-bottom:16px !important; }
.rbe-sales-plan .elementor-widget-icon-box .elementor-icon-box-title { margin-top:0 !important; }
.rbe-sales-plan .elementor-element-d19e6e46 > .elementor-container { min-width:0; max-width:1140px; }
.rbe-sales-plan .elementor-element-d19e6e46 .elementor-column { min-width:0; }
.rbe-sales-plan .elementor-element-d19e6e46 .elementor-widget-wrap { min-width:0; max-width:100%; box-sizing:border-box; }
.rbe-sales-city #rbe-plans-embed { width:100%; min-width:0; }
.rbe-sales-city .rbe-sales-city-check { width:min(100%,620px); margin:0 auto; padding:24px 0; }
.rbe-sales-city .rbe-public-plans-fallback__grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr)); }
.rbe-sales-city .rbe-public-plans-fallback__card { min-width:0; }
.rbe-sales-city .rbe-checker-fallback a { color:#fff; }
@media (max-width:767px) {
    .rbe-sales-plan .elementor-top-section { padding-left:20px !important; padding-right:20px !important; }
    .rbe-sales-plan .elementor-top-section:not(.rbe-pd-hero):not(.elementor-element-89f71271) { padding-top:36px !important; padding-bottom:36px !important; }
    .rbe-sales-plan .elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-left:0 !important; padding-right:0 !important; }
    .rbe-sales-plan .elementor-inner-section { margin-left:0 !important; margin-right:0 !important; }
    .rbe-sales-plan .elementor-inner-section > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-left:16px !important; padding-right:16px !important; }
    .rbe-sales-plan .elementor-element-cf23d2e1 > .elementor-container,
    .rbe-sales-plan .elementor-element-e78b7930 > .elementor-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 16px; }
    .rbe-sales-plan .elementor-element-cf23d2e1 > .elementor-container > .elementor-column,
    .rbe-sales-plan .elementor-element-e78b7930 > .elementor-container > .elementor-column { width:100%; }
    .rbe-sales-plan .elementor-widget-icon-box .elementor-icon-box-title { font-size:17px; }
    .rbe-sales-plan .elementor-widget-icon-box .elementor-icon-box-description { font-size:14px; }
    .rbe-sales-plan .rbe-sales-price strong { font-size:32px; }
    .rbe-sales-city .rbe-sales-city-check { padding:20px; }
}
/* NBN 50's decorative glow previously extended 90px beyond the card. */
.rbe-sales-plan .rbe-pd-designed > .elementor-container::before { right:0 !important; left:auto !important; max-width:100%; }
/* Service pages use full-width section backgrounds and one content gutter. */
.rbe-sales-service .elementor-top-section:has(.rbe-site) { padding-left:0 !important; padding-right:0 !important; }
.rbe-sales-service .elementor-top-section:has(.rbe-site) > .elementor-container { max-width:none !important; padding-left:0 !important; padding-right:0 !important; }
.rbe-sales-service .elementor-widget-wrap:has(> .elementor-widget-html .rbe-site) { padding:0 !important; }
.rbe-sales-service .elementor-widget-html:has(.rbe-site) > .elementor-widget-container { margin:0 !important; padding:0 !important; }
.rbe-sales-service .rbe-site { width:100%; max-width:none; }
.rbe-sales-service .rbe-site section.rbe-wrap { padding-left:24px; padding-right:24px; }
@media (max-width:767px) {
    .rbe-sales-service .rbe-site section.block { padding-top:40px !important; padding-bottom:40px !important; }
    .rbe-sales-service .rbe-site .rbe-wrap { padding-left:20px !important; padding-right:20px !important; }
    .rbe-sales-service .rbe-site .hero { padding-top:36px !important; padding-bottom:40px !important; }
}
/* Keep the comparison's background clear of legacy decorative curves. */
.rbe-sales-city .elementor-top-section:has(#rbe-plans-embed) { background-image:none !important; }
@media (max-width:767px) {
    /* Coloured information cards still need an inner gutter after removing the outer duplicate. */
    .rbe-sales-plan .elementor-top-section > .elementor-container > .elementor-element-e1c00020 > .elementor-widget-wrap,
    .rbe-sales-plan .elementor-top-section > .elementor-container > .elementor-element-e1e00040 > .elementor-widget-wrap {
        padding-left:20px !important;
        padding-right:20px !important;
    }
}
@media (max-width:767px) {
    /* The comparison formerly added 30px + 16px + 10px gutters on each side. */
    .rbe-sales-city .elementor-element-5edc3076 { padding-left:20px !important; padding-right:20px !important; }
    .rbe-sales-city .elementor-element-5edc3076 > .elementor-container,
    .rbe-sales-city .elementor-element-rbeplcol > .elementor-widget-wrap { padding-left:0 !important; padding-right:0 !important; }
}

/* Service templates assumed a 16px root; the WordPress theme uses 10px. */
@media (min-width:768px) {
    .rbe-sales-service .rbe-site .hero h1 { font-size:clamp(36px,4vw,52px); line-height:1.12; max-width:24ch; }
    .rbe-sales-service .rbe-site .hero p.sub { font-size:20px; line-height:1.5; max-width:60ch; }
}
