.sage-builder-page{max-width:1100px;margin:0 auto}.sage-builder-page img{max-width:100%;height:auto}.sage-builder-page .sage-builder-button{display:inline-block;background:#1469a8;color:#fff;text-decoration:none;padding:12px 24px;border-radius:5px}.sage-builder-page figure{margin:1.5em 0}

.sage-builder-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.sage-builder-columns:has(>.sage-builder-column:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}.sage-builder-column{min-width:0}@media(max-width:767px){.sage-builder-columns,.sage-builder-columns:has(>.sage-builder-column:nth-child(3)){grid-template-columns:1fr}}

@media(max-width:767px){.sage-builder-columns.sage-keep-mobile{grid-template-columns:repeat(2,minmax(0,1fr))}.sage-builder-columns.sage-keep-mobile:has(>.sage-builder-column:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}}

@media(max-width:767px){.sage-builder-page .sage-responsive-text[style*="--sage-mobile-size"]{font-size:var(--sage-mobile-size)!important}}

@media (min-width:768px) and (max-width:1024px){.sage-builder-page .sage-responsive-text[style*="--sage-tablet-size"]{font-size:var(--sage-tablet-size)!important}}

/* 1.0: responsive typography and overflow protection, scoped to Sage content */
.sage-builder-page,.sage-builder-page *{box-sizing:border-box}
.sage-builder-page h2.sage-responsive-text,.sage-builder-page .sage-builder-text,.sage-builder-page .sage-builder-button{line-height:1.3;overflow-wrap:break-word;max-width:100%}
.sage-builder-page .sage-builder-column,.sage-builder-page .sage-builder-columns{min-width:0}
@media(max-width:767px){
 .sage-builder-page h2.sage-responsive-text:not([style*="--sage-mobile-size"]){font-size:clamp(20px,6vw,34px)!important;line-height:1.3!important}
 .sage-builder-page .sage-responsive-text[style*="--sage-mobile-size"]{line-height:1.3!important}
 .sage-builder-page .sage-builder-columns{row-gap:18px}
 .sage-builder-page img{max-width:100%;height:auto}
}

/* 1.1: preserve editor column proportions on the published page */
@media(min-width:768px){.sage-builder-page .sage-builder-columns[style*="--sage-col-first"]{grid-template-columns:minmax(0,var(--sage-col-first)) minmax(0,var(--sage-col-second))}}

/* 1.4.8: consistent two-part column structure (content + action). */
@media (min-width:768px) {
  .sage-builder-page .sage-builder-columns.sage-equal-buttons {
    display:grid!important;
    align-items:stretch!important;
  }
  .sage-builder-page .sage-builder-columns.sage-equal-buttons > .sage-builder-column:has(> .sage-builder-column-footer) {
    display:flex!important;
    flex-direction:column!important;
    align-self:stretch!important;
    height:auto!important;
    min-height:0!important;
    position:static!important;
    padding-bottom:0!important;
  }
  .sage-builder-page .sage-builder-columns.sage-equal-buttons > .sage-builder-column > .sage-builder-column-main {
    display:flow-root!important;
    flex:1 1 auto!important;
    min-height:0!important;
  }
  .sage-builder-page .sage-builder-columns.sage-equal-buttons > .sage-builder-column > .sage-builder-column-footer {
    position:static!important;
    display:block!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:12px 0 0!important;
    align-self:stretch!important;
  }
  .sage-builder-page .sage-builder-columns.sage-equal-buttons > .sage-builder-column > .sage-builder-column-footer > .sage-builder-button-row {
    margin:0!important;
    padding:0!important;
  }
}
@media(max-width:767px){
  .sage-builder-page .sage-builder-columns.sage-equal-buttons{min-height:0!important}
  .sage-builder-page .sage-builder-columns.sage-equal-buttons > .sage-builder-column{display:block!important;min-height:0!important}
  .sage-builder-page .sage-builder-columns.sage-equal-buttons .sage-builder-column-footer{padding-top:12px!important}
}

.sage-builder-page .sage-builder-media{max-width:100%;min-width:0;margin:1em 0}.sage-builder-page .sage-builder-media iframe,.sage-builder-page .sage-builder-media video,.sage-builder-page .sage-builder-media audio{display:inline-block;max-width:100%;vertical-align:middle}

/* Sage Listening Playlist 1.6.2 */
.sage-listening-playlist{max-width:760px;width:100%;padding:20px;border:1px solid #dce4ee;border-radius:12px;box-sizing:border-box}
.sage-listening-playlist h3{margin:0 0 12px}.sage-listening-playlist audio{display:block;width:100%;margin:10px 0}
.sage-playlist-controls{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.sage-playlist-controls button,.sage-track-list button{cursor:pointer;border:1px solid #b8c8dc;border-radius:6px;padding:8px 12px;background:#f6f9fc;color:#17375a}
.sage-track-list{margin:8px 0 15px;padding-left:26px}.sage-track-list li{margin:5px 0}
.sage-track-list button[aria-current=true]{background:#1469a8;color:white}.sage-transcript{border-top:1px solid #ddd;padding-top:10px}.sage-transcript summary{cursor:pointer;font-weight:600}

/* 1.7.5: responsive image gallery widget */
.sage-builder-gallery{display:grid;grid-template-columns:repeat(var(--sage-gallery-columns,3),minmax(0,1fr));gap:14px;width:100%;max-width:100%;box-sizing:border-box}
.sage-builder-gallery figure{margin:0;min-width:0}
.sage-builder-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;max-width:100%;height:auto}
.sage-builder-gallery figcaption{font-size:.88em;line-height:1.4;margin-top:6px;overflow-wrap:anywhere}
@media(max-width:767px){.sage-builder-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}
@media(max-width:400px){.sage-builder-gallery{grid-template-columns:1fr}}

/* 1.7.6.0: native, keyboard-accessible FAQ accordion */
.sage-builder-accordion{display:grid;gap:10px;max-width:100%;min-width:0}
.sage-builder-accordion details{border:1px solid #d4dee8;border-radius:7px;background:#fff;overflow:hidden}
.sage-builder-accordion summary{padding:13px 16px;cursor:pointer;font-weight:600;list-style-position:inside}
.sage-builder-accordion summary:hover{background:#f2f7fd}
.sage-builder-accordion summary:focus-visible{outline:3px solid #2271b1;outline-offset:-3px}
.sage-builder-accordion .sage-accordion-answer{padding:12px 16px;border-top:1px solid #d4dee8;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}

/* Tabs widget: radios render functional tabs without client-side JS on public pages. */
.sage-builder-tabs{min-width:0;max-width:100%}.sage-builder-tabs .sage-tab-radio{position:absolute!important;width:1px;height:1px;opacity:0;pointer-events:none}
.sage-builder-tabs .sage-tabs-nav{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid #cbd5e1;margin-bottom:0}
.sage-builder-tabs .sage-tabs-nav label,.sage-builder-tabs .sage-tabs-nav button{display:inline-block;border:1px solid #d4dee8;border-bottom:0;border-radius:6px 6px 0 0;background:#f4f7fb;color:#173a60;padding:10px 14px;cursor:pointer;font:inherit;line-height:1.4}
.sage-builder-tabs .sage-tabs-nav label:hover,.sage-builder-tabs .sage-tabs-nav button:hover{background:#e8f2fd}
.sage-builder-tabs .sage-tab-panel{padding:16px;border:1px solid #d4dee8;border-top:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}
.sage-builder-tabs .sage-tab-panel:not(:first-child){display:none}
.sage-builder-tabs .sage-tabs-nav button[aria-selected="true"]{background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs .sage-tabs-panels .sage-tab-panel[hidden]{display:none!important}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(1):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(1):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(1){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(1):checked) .sage-tabs-nav > label:nth-child(1){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(2):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(2):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(2){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(2):checked) .sage-tabs-nav > label:nth-child(2){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(3):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(3):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(3){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(3):checked) .sage-tabs-nav > label:nth-child(3){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(4):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(4):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(4){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(4):checked) .sage-tabs-nav > label:nth-child(4){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(5):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(5):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(5){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(5):checked) .sage-tabs-nav > label:nth-child(5){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(6):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(6):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(6){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(6):checked) .sage-tabs-nav > label:nth-child(6){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(7):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(7):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(7){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(7):checked) .sage-tabs-nav > label:nth-child(7){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(8):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(8):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(8){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(8):checked) .sage-tabs-nav > label:nth-child(8){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(9):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(9):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(9){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(9):checked) .sage-tabs-nav > label:nth-child(9){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(10):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(10):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(10){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(10):checked) .sage-tabs-nav > label:nth-child(10){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(11):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(11):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(11){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(11):checked) .sage-tabs-nav > label:nth-child(11){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(12):checked) .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(12):checked) .sage-tabs-panels > .sage-tab-panel:nth-child(12){display:block}
.sage-builder-tabs:has(> .sage-tab-radio:nth-child(12):checked) .sage-tabs-nav > label:nth-child(12){background:#e6f1ff;color:#0954a2;border-color:#74abec;font-weight:700}
.sage-builder-tabs > .sage-tab-radio:nth-child(1):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(1):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(1){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(1):focus-visible ~ .sage-tabs-nav > label:nth-child(1){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(2):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(2):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(2){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(2):focus-visible ~ .sage-tabs-nav > label:nth-child(2){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(3):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(3):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(3){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(3):focus-visible ~ .sage-tabs-nav > label:nth-child(3){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(4):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(4):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(4){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(4):focus-visible ~ .sage-tabs-nav > label:nth-child(4){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(5):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(5):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(5){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(5):focus-visible ~ .sage-tabs-nav > label:nth-child(5){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(6):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(6):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(6){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(6):focus-visible ~ .sage-tabs-nav > label:nth-child(6){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(7):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(7):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(7){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(7):focus-visible ~ .sage-tabs-nav > label:nth-child(7){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(8):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(8):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(8){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(8):focus-visible ~ .sage-tabs-nav > label:nth-child(8){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(9):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(9):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(9){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(9):focus-visible ~ .sage-tabs-nav > label:nth-child(9){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(10):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(10):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(10){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(10):focus-visible ~ .sage-tabs-nav > label:nth-child(10){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(11):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(11):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(11){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(11):focus-visible ~ .sage-tabs-nav > label:nth-child(11){outline:3px solid #2271b1;outline-offset:2px}
.sage-builder-tabs > .sage-tab-radio:nth-child(12):checked ~ .sage-tabs-panels > .sage-tab-panel{display:none}
.sage-builder-tabs > .sage-tab-radio:nth-child(12):checked ~ .sage-tabs-panels > .sage-tab-panel:nth-child(12){display:block}
.sage-builder-tabs > .sage-tab-radio:nth-child(12):focus-visible ~ .sage-tabs-nav > label:nth-child(12){outline:3px solid #2271b1;outline-offset:2px}

/* 1.7.8.0 — Divider widget */
.sage-builder-divider{display:block;width:100%;max-width:100%;min-width:0;overflow:hidden}.sage-builder-divider hr{box-sizing:border-box;max-width:100%}.sage-divider-controls{display:grid;gap:12px}.sage-divider-controls label{display:grid;gap:5px}

/* 1.7.9.0: icon box widget */
.sage-builder-iconbox{display:flex;align-items:flex-start;gap:16px;padding:20px;border:1px solid #dde5ef;border-radius:10px;max-width:100%;min-width:0;box-sizing:border-box;background:#fff}
.sage-builder-iconbox .sage-iconbox-symbol{flex:0 0 auto;font-size:38px;line-height:1.15;font-weight:700}
.sage-builder-iconbox .sage-iconbox-content{min-width:0;flex:1}
.sage-builder-iconbox h3{margin:0 0 8px;font-size:21px;line-height:1.3}
.sage-builder-iconbox p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}
.sage-iconbox-controls label{display:block;margin:0 0 14px;font-weight:600}
.sage-iconbox-controls input,.sage-iconbox-controls textarea,.sage-iconbox-controls select{width:100%;max-width:100%;display:block;margin-top:6px;font-weight:400}
@media(max-width:480px){.sage-builder-iconbox{gap:10px;padding:12px}.sage-builder-iconbox .sage-iconbox-symbol{font-size:30px}.sage-builder-iconbox h3{font-size:18px}}

/* Counter / Contador */
.sage-builder-counter{box-sizing:border-box;width:100%;max-width:100%;padding:24px 16px;text-align:center;overflow-wrap:anywhere}
.sage-counter-value{font-size:clamp(32px,5vw,56px);font-weight:800;line-height:1.15;color:#2563eb;font-variant-numeric:tabular-nums}
.sage-counter-label{font-size:17px;line-height:1.5;margin-top:8px;color:#334155}
.sage-counter-controls{display:grid;gap:12px}
.sage-counter-controls label{display:grid;gap:5px;font-weight:600}
.sage-counter-controls input{width:100%;max-width:100%;font-weight:400;box-sizing:border-box}

/* CTA / Call to Action */
.sage-builder-cta{box-sizing:border-box;max-width:100%;padding:28px 24px;text-align:center;border:1px solid #dbeafe;border-radius:12px;background:#f1f7ff;overflow-wrap:anywhere}
.sage-builder-cta h3{font-size:clamp(22px,3vw,32px);line-height:1.2;margin:0 0 12px;color:#14213d}
.sage-builder-cta p{font-size:17px;line-height:1.6;margin:0 0 18px;color:#334155}
.sage-cta-button{display:inline-block!important;box-sizing:border-box;padding:12px 22px;border-radius:7px;background:#2456e8;color:#fff!important;text-decoration:none!important;font-weight:700;max-width:100%;overflow-wrap:anywhere}
@media(max-width:480px){.sage-builder-cta{padding:20px 14px}}

/* Testimonial / Depoimento */
.sage-builder-testimonial{box-sizing:border-box;max-width:100%;margin:0;padding:24px;border:1px solid #e1e8f4;border-radius:12px;background:#f8fbff;color:#1e293b;overflow-wrap:anywhere}
.sage-builder-testimonial .sage-testimonial-stars{color:#df9900;font-size:22px;letter-spacing:3px;margin-bottom:12px}
.sage-builder-testimonial blockquote{margin:0 0 16px;padding:0;border:0;font-size:clamp(16px,2vw,20px);line-height:1.55;font-style:italic;color:inherit}
.sage-builder-testimonial figcaption{font-size:14px;color:#475569}.sage-builder-testimonial figcaption strong{color:#182a45}
@media(max-width:480px){.sage-builder-testimonial{padding:18px 14px}}

/* Progress Bar / Barra de progresso — v1.7.13.0 */
.sage-builder-progress{box-sizing:border-box;padding:14px 4px;max-width:100%;font-family:inherit;color:#1e293b}
.sage-progress-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 9px;font-size:15px;line-height:1.4}
.sage-progress-header strong{font-weight:600}.sage-progress-header span{font-weight:700;white-space:nowrap}
.sage-progress-track{height:18px;background:#e8edf6;border-radius:100px;overflow:hidden;width:100%}
.sage-progress-fill{height:100%;border-radius:100px;max-width:100%;transition:width .2s ease}
@media(prefers-reduced-motion:reduce){.sage-progress-fill{transition:none}}

/* Pricing Table / Tabela de preços — v1.7.14.0 */
.sage-builder-pricing{box-sizing:border-box;width:100%;max-width:520px;margin:0 auto;padding:26px 24px;text-align:center;border:1px solid #d6e0ec;border-radius:12px;background:#fff;color:#1e293b;overflow-wrap:anywhere}
.sage-builder-pricing.sage-pricing-featured{border:2px solid #2563eb;box-shadow:0 5px 18px rgba(37,99,235,.12)}
.sage-builder-pricing h3{margin:0 0 16px;font-size:1.5rem}.sage-pricing-price{font-weight:700;font-size:2.5rem;line-height:1.25}
.sage-pricing-period{color:#64748b;margin:4px 0 18px}.sage-builder-pricing ul{padding:0;margin:0 0 22px;list-style:none;text-align:left}
.sage-builder-pricing li{padding:9px 4px;border-bottom:1px solid #e2e8f0}.sage-builder-pricing li:before{content:'✓';color:#198754;margin-right:10px}
.sage-pricing-button{display:inline-block;max-width:100%;box-sizing:border-box;border-radius:7px;background:#2563eb;color:#fff!important;padding:12px 22px;font-weight:600;text-decoration:none}
.sage-pricing-button:hover{background:#1d4ed8;color:#fff!important}

/* Icon List / Lista de ícones — v1.7.15.0 */
.sage-builder-icon-list{list-style:none!important;margin:0;padding:8px 0;max-width:100%;box-sizing:border-box}
.sage-builder-icon-list li{display:flex;align-items:flex-start;gap:12px;padding:10px 2px;line-height:1.5;border-bottom:1px solid #e7edf5;overflow-wrap:anywhere}
.sage-builder-icon-list li:last-child{border-bottom:0}
.sage-icon-list-mark{flex:0 0 22px;font-size:18px;font-weight:700;text-align:center;line-height:1.4}

/* Social Icons / Ícones sociais — v1.7.16.0 */
.sage-builder-social-icons{padding:12px 4px;max-width:100%;box-sizing:border-box}
.sage-builder-social-icons h3{font-size:1.2em;margin:0 0 12px;line-height:1.4}
.sage-social-links{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sage-social-icon{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 14px;box-sizing:border-box;border:2px solid var(--sage-social-color,#2563eb);border-radius:9px;color:var(--sage-social-color,#2563eb)!important;background:transparent;font-size:14px;font-weight:600;text-decoration:none!important;line-height:1.2;transition:background .15s ease,color .15s ease}
a.sage-social-icon:hover,a.sage-social-icon:focus-visible{background:var(--sage-social-color,#2563eb);color:#fff!important;text-decoration:none}
.sage-social-placeholder{color:#64748b;font-style:italic}
.sage-social-controls label{display:block;margin:12px 0;font-weight:600}
.sage-social-controls input{display:block;width:100%;box-sizing:border-box;margin-top:6px}

/* Alert Box / Caixa de aviso — v1.7.17.0 */
.sage-builder-alert{box-sizing:border-box;max-width:100%;padding:18px 20px;border:1px solid #93c5fd;border-left:5px solid #2563eb;border-radius:9px;background:#eff6ff;color:#1e3a8a;overflow-wrap:anywhere}
.sage-builder-alert.sage-alert-success{background:#f0fdf4;color:#166534;border-color:#86efac;border-left-color:#16a34a}
.sage-builder-alert.sage-alert-warning{background:#fffbeb;color:#92400e;border-color:#fcd34d;border-left-color:#d97706}
.sage-builder-alert.sage-alert-error{background:#fef2f2;color:#991b1b;border-color:#fca5a5;border-left-color:#dc2626}
.sage-builder-alert .sage-alert-title{display:block;font-size:1.1em;margin:0 0 7px;font-weight:700}
.sage-builder-alert p{margin:0;line-height:1.55;color:inherit}
.sage-alert-controls label{display:block;margin:12px 0;font-weight:600}
.sage-alert-controls input,.sage-alert-controls textarea,.sage-alert-controls select{display:block;width:100%;box-sizing:border-box;margin-top:6px}

/* Sage 1.7.19.0 navigation widget */
.sage-builder-navmenu{display:flex;flex-wrap:wrap;gap:10px var(--sage-nav-gap,22px);align-items:center;justify-content:center;padding:12px 8px;box-sizing:border-box;max-width:100%}.sage-builder-navmenu.sage-nav-left{justify-content:flex-start}.sage-builder-navmenu.sage-nav-right{justify-content:flex-end}.sage-builder-navmenu a,.sage-builder-navmenu .sage-nav-link{color:var(--sage-nav-color,#2563eb);font-weight:600;text-decoration:none;overflow-wrap:anywhere}.sage-builder-navmenu a:hover,.sage-builder-navmenu a:focus{text-decoration:underline}@media(max-width:600px){.sage-builder-navmenu{gap:10px 14px}}


/* 1.7.20.1: consistent video rectangles inside professional containers.
   Scoped to column videos so standalone media retains its previous behavior. */
.sage-builder-columns .sage-builder-video:not(.sage-ratio-auto) iframe,
.sage-builder-columns .sage-builder-video:not(.sage-ratio-auto) video{
 display:block;width:100%!important;height:auto!important;aspect-ratio:16/9!important;
 object-fit:contain;background:#101820;border:0;max-width:100%;
}
.sage-builder-columns .sage-builder-video.sage-ratio-4-3 iframe,
.sage-builder-columns .sage-builder-video.sage-ratio-4-3 video{aspect-ratio:4/3!important}
.sage-builder-columns .sage-builder-video{margin:0 0 12px!important;line-height:0}
.sage-builder-columns .sage-builder-video.sage-ratio-auto video{height:auto!important;object-fit:contain}

/* Sage 1.7.21 — professional equal-cell grid */
.sage-builder-page .sage-builder-grid{display:grid!important;grid-template-columns:repeat(var(--sage-grid-columns,2),minmax(0,1fr))!important;align-items:start;max-width:100%}
.sage-builder-page .sage-builder-grid>.sage-builder-column{min-width:0;width:100%;box-sizing:border-box}
.sage-builder-page .sage-builder-grid .sage-builder-video{width:100%;max-width:100%}
.sage-builder-page .sage-builder-grid .sage-builder-video video,.sage-builder-page .sage-builder-grid .sage-builder-video iframe{display:block;width:100%!important;max-width:100%!important;aspect-ratio:16/9;object-fit:contain}
@media(max-width:767px){.sage-builder-page .sage-builder-grid:not(.sage-keep-mobile){grid-template-columns:1fr!important}}

/* Sage 1.7.21.1 — controles das celulas no site */
.sage-builder-page .sage-builder-grid>.sage-builder-column{padding:var(--sage-grid-cell-padding,0px);display:flex;flex-direction:column;justify-content:var(--sage-grid-cell-align,start)}

/* 1.7.23: explicit container count overrides legacy three-column selectors. */
.sage-builder-page .sage-builder-columns:not(.sage-builder-grid){grid-template-columns:repeat(var(--sage-container-columns,2),minmax(0,1fr))}
@media(min-width:768px){.sage-builder-page .sage-builder-columns:not(.sage-builder-grid)[style*="--sage-col-first"]{grid-template-columns:minmax(0,var(--sage-col-first)) minmax(0,var(--sage-col-second))}}
@media(max-width:767px){.sage-builder-page .sage-builder-columns:not(.sage-builder-grid):not(.sage-keep-mobile){grid-template-columns:1fr}.sage-builder-page .sage-builder-columns.sage-keep-mobile:not(.sage-builder-grid){grid-template-columns:repeat(var(--sage-container-columns,2),minmax(0,1fr))}}

/* 1.7.24: opt-in flex layout inside container columns. */
.sage-builder-page .sage-builder-columns.sage-content-flex{align-items:stretch!important}
.sage-builder-page .sage-content-flex>.sage-builder-column{display:flex;flex-direction:var(--sage-content-direction,column);flex-wrap:wrap;justify-content:var(--sage-content-justify,flex-start);align-items:var(--sage-content-align,stretch);gap:var(--sage-content-gap,12px)}
.sage-builder-page .sage-content-flex>.sage-builder-column>*{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:767px){.sage-builder-page .sage-content-flex>.sage-builder-column{flex-direction:column}}

/* Sage Video Playlist 1.7.29 */
.sage-video-playlist{width:100%;max-width:1100px;margin:16px auto;box-sizing:border-box}
.sage-video-playlist h3{margin:0 0 14px}.sage-vpl-layout{display:grid;grid-template-columns:minmax(180px,32%) minmax(0,1fr);border:1px solid #dce4ee;border-radius:10px;overflow:hidden;background:#fff}
.sage-vpl-menu{max-height:470px;overflow-y:auto;display:flex;flex-direction:column;background:#f5f7fa}
.sage-vpl-track{appearance:none;border:0;border-bottom:1px solid #e0e5ed;background:transparent;padding:14px;text-align:left;cursor:pointer;color:#263548;font:inherit;overflow-wrap:anywhere}
.sage-vpl-track[aria-pressed=true]{background:#e3edf8;font-weight:700}.sage-vpl-track:focus-visible{outline:3px solid #2678c5;outline-offset:-3px}
.sage-vpl-player{min-width:0;background:#101015;color:#fff}.sage-vpl-screen{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}.sage-vpl-screen iframe,.sage-vpl-screen video{display:block;width:100%;height:100%;border:0;aspect-ratio:16/9}.sage-vpl-caption{margin:0;padding:9px 14px;font-size:14px}
@media(max-width:700px){.sage-vpl-layout{grid-template-columns:1fr}.sage-vpl-menu{max-height:185px}.sage-vpl-player{grid-row:1}}

/* Sage 1.7.40: sidebar fixa somente na pagina publica */
.sage-builder-page .sage-widget-sidebar-fixed{width:min(var(--sage-sidebar-width,260px),42%);max-width:100%;float:left;min-height:340px;margin:0 22px 22px 0;position:relative;z-index:1}
.sage-builder-page .sage-widget-sidebar-right{float:right;margin:0 0 22px 22px}
.sage-builder-page .sage-widget-sidebar-inner{position:sticky;top:24px;padding:20px;border:1px solid #dbe3ef;border-radius:9px;background:#f8fafc;overflow-wrap:anywhere}
.sage-builder-page .sage-widget-sidebar-inner h3{margin:0 0 12px;font-size:20px}
.sage-builder-page .sage-widget-sidebar-inner nav{display:grid;gap:10px}
.sage-builder-page .sage-widget-sidebar-inner nav a{text-decoration:none}
@media(max-width:767px){.sage-builder-page .sage-widget-sidebar-fixed{float:none!important;width:100%;min-height:0;margin:0 0 20px}.sage-builder-page .sage-widget-sidebar-inner{position:static}}

/* Sage 1.7.41: layout real de duas areas no site publicado. */
.sage-builder-page .sage-page-with-sidebar{display:grid;grid-template-columns:minmax(0,var(--sage-sidebar-width,260px)) minmax(0,1fr);gap:24px;align-items:start;width:100%;max-width:100%;box-sizing:border-box}
.sage-builder-page .sage-page-with-sidebar.sage-layout-sidebar-right{grid-template-columns:minmax(0,1fr) minmax(0,var(--sage-sidebar-width,260px))}
.sage-builder-page .sage-page-with-sidebar.sage-layout-sidebar-right>.sage-widget-sidebar-fixed{grid-column:2;grid-row:1}
.sage-builder-page .sage-page-with-sidebar.sage-layout-sidebar-right>.sage-page-main-content{grid-column:1;grid-row:1}
.sage-builder-page .sage-page-with-sidebar>.sage-widget-sidebar-fixed{float:none!important;position:sticky;top:24px;width:100%!important;max-width:100%;min-width:0;min-height:0;margin:0!important;align-self:start;z-index:1;box-sizing:border-box}
.sage-builder-page .sage-page-with-sidebar>.sage-widget-sidebar-fixed>.sage-widget-sidebar-inner{position:static}
.sage-builder-page .sage-page-with-sidebar>.sage-page-main-content{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:767px){.sage-builder-page .sage-page-with-sidebar,.sage-builder-page .sage-page-with-sidebar.sage-layout-sidebar-right{display:flex;flex-direction:column;gap:20px}.sage-builder-page .sage-page-with-sidebar>.sage-widget-sidebar-fixed{position:static;width:100%!important}.sage-builder-page .sage-page-with-sidebar>.sage-page-main-content{width:100%}}

/* 1.7.42 — identidade visual independente da sidebar fixa */
.sage-builder-page .sage-page-with-sidebar .sage-widget-sidebar-fixed .sage-widget-sidebar-inner{background:var(--sage-sb-bg,#f8fafc);border-color:var(--sage-sb-border,#dbe3ef);border-width:var(--sage-sb-border-width,1px);border-style:solid;border-radius:var(--sage-sb-radius,9px);padding:var(--sage-sb-padding,20px);box-shadow:var(--sage-sb-shadow,none);color:var(--sage-sb-text,#222222)}
.sage-builder-page .sage-page-with-sidebar .sage-widget-sidebar-fixed .sage-widget-sidebar-inner h3{color:var(--sage-sb-title,#222222)}
.sage-builder-page .sage-page-with-sidebar .sage-widget-sidebar-fixed .sage-widget-sidebar-inner p{color:var(--sage-sb-text,#222222)}
.sage-builder-page .sage-page-with-sidebar .sage-widget-sidebar-fixed .sage-widget-sidebar-inner nav a{color:var(--sage-sb-link,#d00000)}
.sage-builder-page .sage-page-with-sidebar .sage-widget-sidebar-fixed .sage-widget-sidebar-inner nav a:hover,.sage-builder-page .sage-page-with-sidebar .sage-widget-sidebar-fixed .sage-widget-sidebar-inner nav a:focus-visible{color:var(--sage-sb-hover,#2563eb)}

/* 1.7.43 — sidebar recolhível isolada, sem alterar sidebar fixa */
.sage-builder-page .sage-drawer-widget{display:block;position:relative;min-height:46px}
.sage-builder-page .sage-drawer-trigger{cursor:pointer;background:var(--sage-drawer-button-bg,#2563eb);color:var(--sage-drawer-button-text,#fff);padding:12px 18px;border:0;border-radius:8px;font:inherit}
.sage-builder-page .sage-drawer-overlay[hidden]{display:none!important}
.sage-builder-page .sage-drawer-overlay{position:fixed;inset:0;z-index:99998;background:rgba(0,0,0,.48)}
.sage-builder-page .sage-drawer-panel{position:fixed;top:0;bottom:0;left:0;z-index:99999;box-sizing:border-box;width:min(var(--sage-drawer-width,300px),90vw);max-width:90vw;overflow-y:auto;overscroll-behavior:contain;transform:translateX(-105%);visibility:hidden;transition:transform .25s ease,visibility .25s ease;background:var(--sage-sb-bg,#f8fafc);color:var(--sage-sb-text,#222222);border:var(--sage-sb-border-width,1px) solid var(--sage-sb-border,#dbe3ef);border-radius:var(--sage-sb-radius,9px);padding:var(--sage-sb-padding,20px);box-shadow:var(--sage-sb-shadow,0 8px 24px rgba(0,0,0,.12))}
.sage-builder-page .sage-drawer-right .sage-drawer-panel{left:auto;right:0;transform:translateX(105%)}
.sage-builder-page .sage-drawer-widget.is-open .sage-drawer-panel{visibility:visible;transform:translateX(0)}
.sage-builder-page .sage-drawer-panel h3{color:var(--sage-sb-title,#222222);margin:20px 0 16px}
.sage-builder-page .sage-drawer-panel p{color:var(--sage-sb-text,#222222)}
.sage-builder-page .sage-drawer-panel nav{display:flex;flex-direction:column;gap:12px}
.sage-builder-page .sage-drawer-panel nav a{color:var(--sage-sb-link,#d00000);text-decoration:none}
.sage-builder-page .sage-drawer-panel nav a:hover,.sage-builder-page .sage-drawer-panel nav a:focus-visible{color:var(--sage-sb-hover,#2563eb)}
.sage-builder-page .sage-drawer-close{float:right;border:0;border-radius:5px;background:transparent;color:var(--sage-sb-text,#222);font-size:30px;cursor:pointer;padding:0 8px}
@media(prefers-reduced-motion:reduce){.sage-builder-page .sage-drawer-panel{transition:none}}

/* 1.7.44 — chavinha central fixa na borda, em vez do botão grande no conteúdo */
.sage-builder-page .sage-drawer-widget{min-height:0;height:0!important;display:contents}
.sage-builder-page .sage-drawer-trigger{position:fixed!important;top:50%;left:0;right:auto;transform:translateY(-50%);width:34px;height:76px;padding:0!important;display:flex;align-items:center;justify-content:center;z-index:100000;border:0!important;border-radius:0 9px 9px 0!important;box-shadow:0 2px 9px rgba(0,0,0,.18);background:var(--sage-drawer-button-bg,#2563eb)!important;color:var(--sage-drawer-button-text,#fff)!important;cursor:pointer;transition:left .25s ease,right .25s ease}
.sage-builder-page .sage-drawer-right .sage-drawer-trigger{left:auto;right:0;border-radius:9px 0 0 9px!important}
.sage-builder-page .sage-drawer-widget.is-open.sage-drawer-left .sage-drawer-trigger{left:min(var(--sage-drawer-width,300px),90vw)}
.sage-builder-page .sage-drawer-widget.is-open.sage-drawer-right .sage-drawer-trigger{right:min(var(--sage-drawer-width,300px),90vw)}
.sage-builder-page .sage-drawer-tab-icon::before{content:'❯';font-size:19px;line-height:1}
.sage-builder-page .sage-drawer-widget.is-open.sage-drawer-left .sage-drawer-tab-icon::before{content:'❮'}
.sage-builder-page .sage-drawer-right .sage-drawer-tab-icon::before{content:'❮'}
.sage-builder-page .sage-drawer-widget.is-open.sage-drawer-right .sage-drawer-tab-icon::before{content:'❯'}
.sage-builder-page .sage-drawer-trigger:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.sage-builder-page .sage-drawer-trigger{transition:none}}

/* Sage 1.7.47 — Optional flex layout for the outer container columns. */
@media(min-width:768px){
 .sage-builder-page .sage-builder-columns.sage-container-flex:not(.sage-builder-grid){display:flex!important;flex-direction:row;flex-wrap:nowrap;justify-content:var(--sage-container-justify,flex-start);align-items:var(--sage-container-align,stretch)!important}
 .sage-builder-page .sage-builder-columns.sage-container-flex:not(.sage-builder-grid)>.sage-builder-column{flex:1 1 0;min-width:0;max-width:100%}
 .sage-builder-page .sage-builder-columns.sage-container-flex:not(.sage-builder-grid)[style*="--sage-col-first-pct"]>.sage-builder-column:first-child{flex:0 1 var(--sage-col-first-pct,50%)}
 .sage-builder-page .sage-builder-columns.sage-container-flex:not(.sage-builder-grid)[style*="--sage-col-first-pct"]>.sage-builder-column:nth-child(2){flex:0 1 var(--sage-col-second-pct,50%)}
}
@media(max-width:767px){
 .sage-builder-page .sage-builder-columns.sage-container-flex:not(.sage-builder-grid):not(.sage-keep-mobile){display:flex!important;flex-direction:column;align-items:stretch!important}
 .sage-builder-page .sage-builder-columns.sage-container-flex.sage-keep-mobile:not(.sage-builder-grid){display:flex!important;flex-direction:row;align-items:stretch!important}
 .sage-builder-page .sage-builder-columns.sage-container-flex.sage-keep-mobile:not(.sage-builder-grid)>.sage-builder-column{flex:1 1 0;min-width:0}
}

/* 1.7.52 — Preserve column content height when Flexbox stacks on phones. */
@media(max-width:767px){.sage-builder-page .sage-builder-columns.sage-container-flex.sage-custom-widths:not(.sage-keep-mobile)>.sage-builder-column{flex:0 1 auto!important}}

/* Individual column text/link colors: opt-in only; saved layouts without colors are unchanged. */
/* 1.7.61: inherit column color for unstyled text; explicit widget colors retain priority. */
.sage-preview-column.sage-column-has-text-color, .sage-builder-column.sage-column-has-text-color {color:var(--sage-col-text-color);}
.sage-preview-column.sage-column-has-text-color :is(.sage-inner-preview, .sage-builder-text, .sage-responsive-text):not([style*="color:"]),
.sage-builder-column.sage-column-has-text-color :is(.sage-builder-text, .sage-responsive-text):not([style*="color:"]) {color:var(--sage-col-text-color);}
.sage-preview-column.sage-column-has-text-color :is(.sage-inner-preview, .sage-builder-text, .sage-responsive-text):not([style*="color:"]) :is(p,h1,h2,h3,h4,h5,h6,li,span):not([style*="color:"]),
.sage-builder-column.sage-column-has-text-color :is(.sage-builder-text, .sage-responsive-text):not([style*="color:"]) :is(p,h1,h2,h3,h4,h5,h6,li,span):not([style*="color:"]) {color:inherit;}
.sage-preview-column.sage-column-has-link-color a, .sage-builder-column.sage-column-has-link-color a {color:var(--sage-col-link-color);}



/* Sage 1.7.64: efeitos opcionais por coluna, sem mudança no estado normal. */
.sage-builder-page .sage-builder-column[class*="sage-column-hover-"],
.sage-preview-column[class*="sage-column-hover-"]{transition:transform .24s ease,box-shadow .24s ease;transform-origin:center center;}
@media (hover:hover) and (pointer:fine){
 .sage-builder-page .sage-column-hover-lift:hover,.sage-preview-column.sage-column-hover-lift:hover{transform:translateY(-6px);}
 .sage-builder-page .sage-column-hover-shadow:hover,.sage-preview-column.sage-column-hover-shadow:hover{box-shadow:0 14px 34px rgba(0,0,0,.25)!important;}
 .sage-builder-page .sage-column-hover-scale:hover,.sage-preview-column.sage-column-hover-scale:hover{transform:scale(1.025);}
}
@media (prefers-reduced-motion:reduce){.sage-builder-page .sage-builder-column[class*="sage-column-hover-"],.sage-preview-column[class*="sage-column-hover-"]{transition:none!important;}}

/* 1.7.65 — animações de entrada apenas após ativação em JavaScript. */
@media (prefers-reduced-motion:no-preference){
 .sage-builder-page .sage-builder-column.sage-entrance-pending{opacity:0;}
 .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-slide{transform:translateY(22px);}
 .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-slide-down{transform:translateY(-22px);}
 .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-slide-left{transform:translateX(22px);}
 .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-slide-right{transform:translateX(-22px);}
 .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-zoom{transform:scale(.96);}
 .sage-builder-page .sage-builder-column.sage-entrance-visible{opacity:1;transform:none;transition:opacity .55s ease,transform .55s ease;}
}

/* Rotate In — fall-back for entrance-pending state */
.sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-rotate{transform:rotate(-8deg) scale(.96);}

/* 1.7.75: Fallback to 3D Flip In while an entrance is pending. */
@media (prefers-reduced-motion:no-preference){
 .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-flip{transform:perspective(1000px) rotateY(-70deg);opacity:0;}
}

/* 1.7.76 — Bounce In, including a CSS fallback for older browsers. */
@keyframes sage-bounce-in {
  0% { opacity:0; transform:translateY(44px) scale(.90); }
  57% { opacity:1; transform:translateY(-13px) scale(1.035); }
  78% { opacity:1; transform:translateY(6px) scale(.988); }
  100% { opacity:1; transform:none; }
}
@media (prefers-reduced-motion:no-preference) {
 .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-bounce { opacity:0;transform:translateY(44px) scale(.90); }
}

/* 1.7.77: Pulse entrance fallback for browsers without Web Animations API. */
@keyframes sage-pulse-in {
  0% { opacity:0; transform:scale(.94); }
  62% { opacity:1; transform:scale(1.055); }
  100% { opacity:1; transform:none; }
}
@media (prefers-reduced-motion:no-preference) {
  .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-pulse { opacity:0; transform:scale(.94); }
}

/* 1.7.78 — gentle Shake entrance fallback (no movement for reduced-motion users). */
@keyframes sage-shake-in {
  0% {opacity:0;transform:translateX(0)}
  22% {opacity:1;transform:translateX(-9px)}
  43% {opacity:1;transform:translateX(9px)}
  63% {opacity:1;transform:translateX(-5px)}
  80% {opacity:1;transform:translateX(4px)}
  100% {opacity:1;transform:translateX(0)}
}

/* 1.7.79 — Swing In pendulum animation (entrance only). */
@keyframes sage-swing-in {
  0% {opacity:0;transform:rotate(13deg);transform-origin:top center}
  33% {opacity:1;transform:rotate(-8deg);transform-origin:top center}
  60% {opacity:1;transform:rotate(5deg);transform-origin:top center}
  82% {opacity:1;transform:rotate(-2deg);transform-origin:top center}
  100% {opacity:1;transform:rotate(0);transform-origin:top center}
}
@media (prefers-reduced-motion:no-preference) {
  .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-swing {opacity:0;transform:rotate(13deg);transform-origin:top center}
}

/* 1.7.80 — Wobble In: a small lateral oscillation, distinct from Swing. */
@keyframes sage-wobble-in {
  0% {opacity:0;transform:translateX(-18px) rotate(-5deg)}
  35% {opacity:1;transform:translateX(13px) rotate(3deg)}
  62% {opacity:1;transform:translateX(-8px) rotate(-2deg)}
  82% {opacity:1;transform:translateX(4px) rotate(1deg)}
  100% {opacity:1;transform:translateX(0) rotate(0)}
}
@media (prefers-reduced-motion:no-preference) {
  .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-wobble {opacity:0;transform:translateX(-18px) rotate(-5deg)}
}

/* 1.7.81 — Tada: subtle celebratory entrance. */
@keyframes sage-tada-in {
  0% {opacity:0;transform:scale(.94) rotate(-3deg)}
  36% {opacity:1;transform:scale(1.08) rotate(3deg)}
  60% {opacity:1;transform:scale(1.03) rotate(-3deg)}
  80% {opacity:1;transform:scale(1.06) rotate(2deg)}
  100% {opacity:1;transform:scale(1) rotate(0)}
}
@media (prefers-reduced-motion:no-preference) {
  .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-tada {opacity:0;transform:scale(.94) rotate(-3deg)}
}

/* 1.7.82 — Jello elastic entry fallback */
@keyframes sage-jello-in {
  0% {opacity:0;transform:scale(.93) skewX(-9deg) skewY(-4deg)}
  30% {opacity:1;transform:scale(1.025) skewX(7deg) skewY(3deg)}
  53% {opacity:1;transform:skewX(-4deg) skewY(-2deg)}
  75% {opacity:1;transform:skewX(2deg) skewY(1deg)}
  100% {opacity:1;transform:none}
}
@media (prefers-reduced-motion: no-preference) {
.sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-jello {opacity:0;transform:skewX(-9deg) skewY(-4deg)}
}

/* 1.7.83 — Rubber Band: elastic horizontal stretch, with CSS fallback. */
@keyframes sage-rubber-band-in {
  0% {opacity:0;transform:scale3d(.85,1.12,1)}
  30% {opacity:1;transform:scale3d(1.20,.78,1)}
  50% {opacity:1;transform:scale3d(.90,1.10,1)}
  72% {opacity:1;transform:scale3d(1.05,.96,1)}
  100% {opacity:1;transform:scale3d(1,1,1)}
}
@media (prefers-reduced-motion:no-preference) {
  .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-rubber-band {opacity:0;transform:scale3d(.85,1.12,1)}
}

/* 1.7.84 — Heartbeat: two gentle beats, with CSS fallback. */
@keyframes sage-heartbeat-in {
  0% {opacity:0;transform:scale(.92)}
  22% {opacity:1;transform:scale(1.12)}
  40% {opacity:1;transform:scale(1)}
  60% {opacity:1;transform:scale(1.10)}
  100% {opacity:1;transform:scale(1)}
}
@media (prefers-reduced-motion: no-preference) {
  .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-heartbeat {opacity:0;transform:scale(.92)}
}

/* 1.7.85 — Flash: subtle opacity pulses on entrance. */
@keyframes sage-flash-in {
  0% {opacity:0} 20% {opacity:1} 38% {opacity:.16}
  58% {opacity:1} 76% {opacity:.35} 100% {opacity:1}
}
@media (prefers-reduced-motion:no-preference) {
  .sage-builder-page .sage-builder-column.sage-entrance-pending.sage-entrance-flash {opacity:0}
}

/* 1.7.86 — vertical navigation option; existing menus remain horizontal. */
.sage-builder-navmenu.sage-nav-vertical{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px;}
.sage-builder-navmenu.sage-nav-vertical.sage-nav-center{align-items:center;}
.sage-builder-navmenu.sage-nav-vertical.sage-nav-right{align-items:flex-end;}

/* 1.7.88 Submenus acessíveis, hover em desktop e clique/toque via details. */
.sage-builder-navmenu{overflow:visible}
.sage-builder-navmenu .sage-nav-item{position:relative;min-width:0}
.sage-builder-navmenu .sage-nav-item summary{cursor:pointer;list-style:none;color:var(--sage-nav-color,#2563eb);font-weight:600;overflow-wrap:anywhere}
.sage-builder-navmenu .sage-nav-item summary::-webkit-details-marker{display:none}
.sage-builder-navmenu .sage-nav-submenu{display:none;position:absolute;top:100%;left:0;z-index:100;min-width:175px;max-width:min(90vw,320px);background:#fff;border:1px solid #dde3eb;border-radius:8px;padding:8px;box-shadow:0 8px 22px rgba(0,0,0,.13);flex-direction:column;gap:3px;text-align:left}
.sage-builder-navmenu .sage-nav-submenu a,.sage-builder-navmenu .sage-nav-submenu .sage-nav-link{display:block;padding:8px 10px;color:var(--sage-nav-color,#2563eb);text-decoration:none}
.sage-builder-navmenu .sage-nav-has-children[open]>.sage-nav-submenu{display:flex}
@media(hover:hover){.sage-builder-navmenu.sage-nav-trigger-hover .sage-nav-has-children:hover>.sage-nav-submenu{display:flex}}
.sage-builder-navmenu.sage-nav-vertical .sage-nav-submenu{left:100%;top:0}
@media(max-width:700px){.sage-builder-navmenu .sage-nav-submenu,.sage-builder-navmenu.sage-nav-vertical .sage-nav-submenu{position:static;min-width:0;max-width:100%;box-shadow:none;margin-top:5px}}

/* 1.7.92: optional submenu width, leaving legacy styles unchanged. */
.sage-builder-navmenu .sage-nav-submenu{width:var(--sage-submenu-width,auto);box-sizing:border-box}
.sage-builder-navmenu .sage-nav-submenu a,.sage-builder-navmenu .sage-nav-submenu .sage-nav-link{overflow-wrap:break-word}
@media(max-width:700px){.sage-builder-navmenu .sage-nav-submenu{width:min(100%,var(--sage-submenu-width,100%))}}

/* 1.7.93: submenu-specific palette, without altering top-level links. */
.sage-builder-navmenu .sage-nav-submenu{background:var(--sage-submenu-bg,#ffffff)}
.sage-builder-navmenu .sage-nav-submenu a,
.sage-builder-navmenu .sage-nav-submenu .sage-nav-link{color:var(--sage-submenu-text,#2563eb)}
.sage-builder-navmenu .sage-nav-submenu a:hover,
.sage-builder-navmenu .sage-nav-submenu a:focus-visible,
.sage-builder-navmenu .sage-nav-submenu .sage-nav-link:hover{background:var(--sage-submenu-hover,#eff6ff);border-radius:5px}

/* 1.7.94: customizable submenu border and radius. */
.sage-builder-navmenu .sage-nav-submenu{border:var(--sage-submenu-border-width,0px) solid var(--sage-submenu-border-color,#e2e8f0);border-radius:var(--sage-submenu-radius,8px);}

/* 1.7.95: independent submenu shadow; the soft preset preserves the approved appearance. */
.sage-builder-navmenu[style*="--sage-submenu-shadow:none"] .sage-nav-submenu{box-shadow:none}
.sage-builder-navmenu[style*="--sage-submenu-shadow:soft"] .sage-nav-submenu{box-shadow:0 8px 22px rgba(0,0,0,.13)}
.sage-builder-navmenu[style*="--sage-submenu-shadow:medium"] .sage-nav-submenu{box-shadow:0 12px 30px rgba(0,0,0,.23)}
.sage-builder-navmenu[style*="--sage-submenu-shadow:strong"] .sage-nav-submenu{box-shadow:0 16px 38px rgba(0,0,0,.34)}


/* 1.7.96: animations are applied only when a submenu becomes visible.
   Keep the previous (immediate) behavior as the default. */
@keyframes sage-submenu-fade-in { from { opacity:0; } to { opacity:1; } }
@keyframes sage-submenu-slide-down { from { opacity:0; transform:translateY(-12px); } to { opacity:1; transform:translateY(0); } }
/* 1.7.98: per-opening animation is restarted by nav-hover.js on each details toggle. */
@media (prefers-reduced-motion:reduce) {
 .sage-builder-navmenu .sage-nav-has-children>.sage-nav-submenu {animation:none!important;}
}

/* 1.7.97: user-configurable inner padding, legacy default 8px. */
.sage-builder-navmenu .sage-nav-submenu{padding:var(--sage-submenu-padding,8px);}

/* Sage 1.7.100 — mark the page being visited without changing menu behavior. */
.sage-builder-navmenu .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu .sage-nav-item.sage-nav-active > summary {text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;}
.sage-builder-navmenu .sage-nav-submenu > a.sage-nav-active {font-weight:700;text-decoration:underline;text-underline-offset:3px;}


/* 1.7.101: Keep top-level horizontal navigation on one line at desktop widths.
   Vertical mode and the submenu's own stacked links are intentionally unaffected. */
@media (min-width:701px) {
 .sage-builder-navmenu.sage-nav-horizontal {display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px var(--sage-nav-gap,22px);width:100%;min-width:0;}
 .sage-builder-navmenu.sage-nav-horizontal > .sage-nav-item {flex:0 0 auto;white-space:nowrap;}
 .sage-builder-navmenu.sage-nav-horizontal > .sage-nav-item > a,
 .sage-builder-navmenu.sage-nav-horizontal > .sage-nav-item > summary {white-space:nowrap;overflow-wrap:normal;}
 .sage-builder-navmenu.sage-nav-horizontal .sage-nav-submenu {white-space:normal;}
}
@media (max-width:700px) {
 .sage-builder-navmenu.sage-nav-horizontal {display:flex;flex-wrap:wrap;flex-direction:row;}
}

/* 1.7.104: independent hover/focus link text color; defaults to normal text color. */
.sage-builder-navmenu .sage-nav-submenu a:hover,
.sage-builder-navmenu .sage-nav-submenu a:focus-visible,
.sage-builder-navmenu .sage-nav-submenu .sage-nav-link:hover,
.sage-builder-navmenu .sage-nav-submenu .sage-nav-link:focus-visible {color:var(--sage-submenu-hover-text,var(--sage-submenu-text,#2563eb));}

/* 1.7.105 — cor opcional apenas para o link da página atual. */
.sage-builder-navmenu[style*="--sage-nav-active-color"] .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu[style*="--sage-nav-active-color"] .sage-nav-item.sage-nav-active > summary,
.sage-builder-navmenu[style*="--sage-nav-active-color"] .sage-nav-submenu > a.sage-nav-active {color:var(--sage-nav-active-color)!important;}

/* Sage 1.7.106 — style the current page in the top-level navigation. */
.sage-builder-navmenu.sage-nav-active-style-bold .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu.sage-nav-active-style-bold .sage-nav-item.sage-nav-active > summary {text-decoration:none;font-weight:800;}
.sage-builder-navmenu.sage-nav-active-style-pill .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu.sage-nav-active-style-pill .sage-nav-item.sage-nav-active > summary {text-decoration:none;background:color-mix(in srgb,var(--sage-nav-active-color,var(--sage-nav-color,#2563eb)) 13%,transparent);border-radius:8px;padding:6px 10px;}
@supports not (color:color-mix(in srgb,red 50%,white)){.sage-builder-navmenu.sage-nav-active-style-pill .sage-nav-item > a.sage-nav-active,.sage-builder-navmenu.sage-nav-active-style-pill .sage-nav-item.sage-nav-active > summary{background:rgba(37,99,235,.12);}}

/* 1.7.107 — fundo opcional para item ativo; sem valor mantém a aparência anterior. */
.sage-builder-navmenu[style*="--sage-nav-active-bg"] .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu[style*="--sage-nav-active-bg"] .sage-nav-item.sage-nav-active > summary,
.sage-builder-navmenu[style*="--sage-nav-active-bg"] .sage-nav-submenu > a.sage-nav-active {background:var(--sage-nav-active-bg)!important;border-radius:var(--sage-nav-active-radius,8px);padding:6px 10px;}

/* 1.7.108 — arredondamento configurável do item ativo, inclusive estilo etiqueta. */
.sage-builder-navmenu.sage-nav-active-style-pill .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu.sage-nav-active-style-pill .sage-nav-item.sage-nav-active > summary {border-radius:var(--sage-nav-active-radius,8px);}

/* 1.7.109 — espaçamento opcional do item ativo; não altera menus antigos. */
.sage-builder-navmenu[style*="--sage-nav-active-pad-x"] .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu[style*="--sage-nav-active-pad-x"] .sage-nav-item.sage-nav-active > summary,
.sage-builder-navmenu[style*="--sage-nav-active-pad-x"] .sage-nav-submenu > a.sage-nav-active {
 padding:var(--sage-nav-active-pad-y,6px) var(--sage-nav-active-pad-x,10px);
}

/* Sage 1.7.111 — borda opcional somente nos itens ativos do menu principal. */
.sage-builder-navmenu .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu .sage-nav-item.sage-nav-active > summary {
 border:var(--sage-nav-active-border-width,0px) solid var(--sage-nav-active-border-color,#780d45);
 box-sizing:border-box;
}

/* Sage 1.7.112 — optional shadow on active top-level item. */
.sage-builder-navmenu .sage-nav-item > a.sage-nav-active,
.sage-builder-navmenu .sage-nav-item.sage-nav-active > summary {
 box-shadow:var(--sage-nav-active-shadow-css,none);
}
.sage-builder-navmenu[style*="--sage-nav-active-shadow:soft"] {--sage-nav-active-shadow-css:0 3px 8px rgba(0,0,0,.16);}
.sage-builder-navmenu[style*="--sage-nav-active-shadow:medium"] {--sage-nav-active-shadow-css:0 6px 16px rgba(0,0,0,.24);}
.sage-builder-navmenu[style*="--sage-nav-active-shadow:strong"] {--sage-nav-active-shadow-css:0 10px 25px rgba(0,0,0,.34);}

/* Sage 1.7.113 — Hover opcional em itens principais não ativos. */
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] .sage-nav-item > a:not(.sage-nav-active):hover,
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] .sage-nav-item > a:not(.sage-nav-active):focus-visible,
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] .sage-nav-item:not(.sage-nav-active) > summary:hover,
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] .sage-nav-item:not(.sage-nav-active) > summary:focus-visible {
 background-color:var(--sage-nav-main-hover-bg);
 border-radius:var(--sage-nav-active-radius,8px);
}

/* Sage 1.7.114: consistently show optional hover background on top-level
   menu triggers (including details/summary), independent of submenu state.
   Never apply it to child links or the current-page active item. */
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] > .sage-nav-item > a:not(.sage-nav-active),
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] > .sage-nav-item:not(.sage-nav-active) > summary {
 display:inline-block;
 border-radius:var(--sage-nav-active-radius,8px);
 padding:6px 10px;
 transition:background-color .16s ease;
}
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] > .sage-nav-item > a:not(.sage-nav-active):is(:hover,:focus-visible),
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] > .sage-nav-item:not(.sage-nav-active) > summary:is(:hover,:focus-visible),
.sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] > details.sage-nav-item:not(.sage-nav-active):hover > summary {
 background:var(--sage-nav-main-hover-bg) !important;
}
@media(prefers-reduced-motion:reduce){
 .sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] > .sage-nav-item > a,
 .sage-builder-navmenu[style*="--sage-nav-main-hover-bg"] > .sage-nav-item > summary {transition:none;}
}


/* Sage 1.7.119: keep top-level menu text and arrow in the normal menu color.
   Hover changes only the background; older saved hover-text values are ignored. */
.sage-builder-navmenu > .sage-nav-item:not(.sage-nav-active) > summary,
.sage-builder-navmenu > .sage-nav-item > a:not(.sage-nav-active),
.sage-builder-navmenu > .sage-nav-item:not(.sage-nav-active) > summary > span {
 color:var(--sage-nav-color,#2563eb) !important;
}

/* Sage 1.7.121 — submenu fits its text on desktop, preserving manual pixel width.
   In narrow viewports, allow lines to wrap instead of overflowing. */
@media (min-width:701px) {
 .sage-builder-navmenu .sage-nav-submenu {
  width:var(--sage-submenu-width,max-content);
  max-width:min(90vw,420px);
 }
}
@media (max-width:700px) {
 .sage-builder-navmenu .sage-nav-submenu {
  width:min(100%,var(--sage-submenu-width,100%));
  max-width:100%;
 }
}


/* Sage 1.7.122 — responsive navigation, scoped to the menu only.
   Desktop styling and normal/hover text colors remain unchanged. */
@media (min-width:601px) and (max-width:900px) {
 .sage-builder-navmenu.sage-nav-horizontal {flex-wrap:wrap;row-gap:12px;}
}
@media (max-width:600px) {
 .sage-builder-navmenu.sage-nav-horizontal {
  display:flex; flex-direction:column; flex-wrap:nowrap;
  align-items:stretch; justify-content:flex-start;
  gap:8px; width:100%; padding:10px 8px;
 }
 .sage-builder-navmenu.sage-nav-horizontal > .sage-nav-item {
  display:block; width:100%; max-width:100%; min-width:0; box-sizing:border-box;
 }
 .sage-builder-navmenu.sage-nav-horizontal > .sage-nav-item > a,
 .sage-builder-navmenu.sage-nav-horizontal > .sage-nav-item > summary {
  display:flex; align-items:center; justify-content:center;
  box-sizing:border-box; width:100%; min-height:44px;
  white-space:normal; overflow-wrap:anywhere; text-align:center;
 }
 .sage-builder-navmenu.sage-nav-horizontal .sage-nav-submenu,
 .sage-builder-navmenu.sage-nav-vertical .sage-nav-submenu {
  position:static; inset:auto; width:100%; max-width:100%; min-width:0;
  box-sizing:border-box; margin-top:6px; overflow-wrap:anywhere;
 }
 .sage-builder-navmenu .sage-nav-submenu > a {min-height:44px; box-sizing:border-box;}
}

/* Sage 1.7.123 — coarse pointers must not keep submenus visible via sticky :hover.
   On touch screens the native details[open] state is the only visibility trigger. */
@media (hover:none) and (pointer:coarse) {
 .sage-builder-navmenu.sage-nav-trigger-hover .sage-nav-has-children:not([open]) > .sage-nav-submenu {
  display:none;
 }
}


/* Sage 1.7.124 — visible keyboard focus for navigation; no mouse/touch styling change.
   Focus indicators must not rely solely on text/background color. */
.sage-builder-navmenu .sage-nav-item > a:focus-visible,
.sage-builder-navmenu .sage-nav-item > summary:focus-visible,
.sage-builder-navmenu .sage-nav-submenu a:focus-visible {
  outline: 3px solid #1d4ed8 !important;
  outline-offset: 3px;
}
@media (forced-colors: active) {
  .sage-builder-navmenu .sage-nav-item > a:focus-visible,
  .sage-builder-navmenu .sage-nav-item > summary:focus-visible,
  .sage-builder-navmenu .sage-nav-submenu a:focus-visible {
    outline-color: Highlight !important;
  }
}

/* 1.7.190: indicador visivel de foco para navegacao por teclado nos botoes Sage. */
.sage-builder-page a.sage-builder-button:focus-visible{outline:3px solid #f59e0b;outline-offset:3px;box-shadow:0 0 0 2px #111827;}

/* 1.7.191: indicador de foco permanece visivel no modo de alto contraste do sistema. */
@media (forced-colors: active) {
  .sage-builder-page a.sage-builder-button:focus-visible {
    outline: 3px solid Highlight !important;
    outline-offset: 3px;
    box-shadow: none !important;
    forced-color-adjust: auto;
  }
}

/* 1.7.192: segundo indicador nao cromatico de foco dos botoes.
   Apenas foco via teclado; hover e aparencia normal preservados. */
.sage-builder-page a.sage-builder-button:focus-visible {
  text-decoration: underline !important;
  text-underline-offset: 0.18em;
  text-decoration-thickness: max(1px, 0.08em);
}


/* 1.7.193: area de toque minima de 44px para botoes em dispositivos touch.
   Preserva estilos, alinhamento, largura e foco no desktop. */
@media (pointer: coarse) {
  .sage-builder-page a.sage-builder-button {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }
}

/* 1.7.194: feedback discreto de toque para o widget Botao no celular.
   Nao altera dimensoes, alinhamento, foco por teclado ou paginas desktop. */
@media (pointer: coarse) {
  .sage-builder-page a.sage-builder-button:active {
    filter: brightness(0.88);
  }
}
@media (forced-colors: active) {
  .sage-builder-page a.sage-builder-button:active {
    filter: none;
    outline: 2px solid Highlight;
    outline-offset: 2px;
  }
}


/* 1.7.195: textos longos ou URLs em botoes quebram dentro do botao
   em telas pequenas; nao altera conteudo salvo nem estilos desktop. */
@media (max-width: 600px) {
  .sage-builder-page a.sage-builder-button {
    overflow-wrap: anywhere;
    word-break: normal;
    white-space: normal;
    max-width: 100%;
    box-sizing: border-box;
  }
}

/* 1.7.196: impede que a linha do widget Botao imponha largura minima
   maior que a tela pequena; nao interfere no desktop ou em dados salvos. */
@media (max-width: 600px) {
  .sage-builder-page .sage-builder-button-row {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
    min-width: 0;
  }
}

/* 1.7.197: rotulos extensos do widget Botao tambem se ajustam a tablets
   em largura intermediaria, sem modificar o desktop nem o conteudo salvo. */
@media (min-width: 601px) and (max-width: 768px) {
  .sage-builder-page .sage-builder-button-row {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    overflow-wrap: anywhere;
    word-break: normal;
    white-space: normal;
  }
}

/* 1.7.198: acompanha tablets maiores (769-1024px) quando textos
   extensos exigirem quebra, sem afetar celulares nem desktop amplo. */
@media (min-width: 769px) and (max-width: 1024px) {
  .sage-builder-page .sage-builder-button-row {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    overflow-wrap: anywhere;
    word-break: normal;
    white-space: normal;
  }
}

/* 1.7.199: protecao de rotulos extensos dos botoes em tablets no modo
   paisagem e janelas intermediarias (1025-1199px). Mantem desktop amplo. */
@media (min-width: 1025px) and (max-width: 1199px) {
  .sage-builder-page .sage-builder-button-row {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    overflow-wrap: anywhere;
    word-break: normal;
    white-space: normal;
  }
}

/* 1.7.200: botoes com rotulos excepcionalmente longos tambem respeitam
   o espaco disponivel em monitores largos (a partir de 1200px).
   Nao interfere em estilos do editor nem na largura de botoes curtos. */
@media (min-width: 1200px) {
  .sage-builder-page .sage-builder-button-row {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    overflow-wrap: anywhere;
    word-break: normal;
    white-space: normal;
  }
}

/* 1.7.201: no zoom do navegador, rotulos excepcionalmente longos
   continuam dentro dos botoes mesmo quando o viewport CSS muda.
   Regras restritas ao widget Botao; nao alteram links ou valores salvos. */
.sage-builder-page .sage-builder-button-row {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.sage-builder-page .sage-builder-button-row > a.sage-builder-button {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  overflow-wrap: anywhere;
}

/* 1.7.202: fallback acessivel de foco para navegadores antigos sem
   suporte a :focus-visible. Navegadores modernos preservam o foco
   somente ao navegar por teclado; nao muda layout ou conteudo. */
@supports not selector(:focus-visible) {
  .sage-builder-page a.sage-builder-button:focus {
    outline: 3px solid #f59e0b;
    outline-offset: 3px;
    text-decoration: underline;
    text-underline-offset: 0.18em;
  }
}
@media (forced-colors: active) {
  @supports not selector(:focus-visible) {
    .sage-builder-page a.sage-builder-button:focus {
      outline-color: Highlight !important;
    }
  }
}

/* 1.7.203: area minima de toque de 44px para links do widget Botao.
   Restringe a regra ao widget; nao altera texto, destino nem estilos salvos. */
.sage-builder-page .sage-builder-button-row > a.sage-builder-button {
  min-height: 44px;
  box-sizing: border-box;
}


/* 1.7.204: reduzir animacoes apenas nos botoes do construtor para
   visitantes com preferencia de movimento reduzido ativada no sistema.
   Mantem estilos, links e realce de foco acessivel. */
@media (prefers-reduced-motion: reduce) {
  .sage-builder-page a.sage-builder-button,
  .sage-builder-page a.sage-builder-button:hover,
  .sage-builder-page a.sage-builder-button:focus,
  .sage-builder-page a.sage-builder-button:active {
    transition: none !important;
    animation: none !important;
  }
}

/* 1.7.205: em celulares estreitos (ate 360px), o widget Botao
   respeita a largura util da coluna, sem forcar rolagem horizontal.
   Sem alterar etiquetas, links ou estilos do desktop. */
@media (max-width: 360px) {
  .sage-builder-page .sage-builder-button-row {
    width: auto;
    min-width: 0;
    max-width: 100%;
  }
  .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    box-sizing: border-box;
  }
}

/* 1.7.206: fallback de quebra para rotulos sem espacos (URLs ou
   palavras longas) em navegadores moveis antigos que nao reconhecem
   overflow-wrap:anywhere. Restringe a alteracao ao widget Botao. */
@media (max-width: 600px) {
  @supports not (overflow-wrap: anywhere) {
    .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
      overflow-wrap: break-word;
      word-wrap: break-word;
      word-break: break-word;
      white-space: normal;
      max-width: 100%;
    }
  }
}

/* Sage 1.7.207: leitura dos botoes ao imprimir ou salvar em PDF.
   Apenas na impressao; nao altera aparencia, dados ou links na tela. */
@media print {
  .sage-builder-page .sage-builder-button-row {
    max-width: 100% !important;
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .sage-builder-page .sage-builder-button-row > a.sage-builder-button {
    color: #000 !important;
    background: #fff !important;
    border: 1px solid #555 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-decoration: none !important;
  }
}

/* Sage 1.7.208: URLs e palavras sem espacos no widget Texto nao
   causam rolagem horizontal no celular. Mantem tipografia e cores. */
@media (max-width: 600px) {
  .sage-builder-page .sage-builder-text {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-wrap: break-word;
  }
  .sage-builder-page .sage-builder-text a {
    overflow-wrap: anywhere;
    word-wrap: break-word;
  }
}


/* Sage 1.7.209: links e listas no widget Texto quebram melhor
   em telas pequenas, sem ultrapassar a largura da pagina. */
.sage-builder-page .sage-builder-text,
.sage-builder-page .sage-builder-text p,
.sage-builder-page .sage-builder-text li,
.sage-builder-page .sage-builder-text a{overflow-wrap:anywhere;word-break:break-word;max-width:100%;}
.sage-builder-page .sage-builder-text ul,
.sage-builder-page .sage-builder-text ol{max-width:100%;padding-left:1.4em;box-sizing:border-box;}

/* Sage 1.7.210: destaque acessivel ao navegar por links do widget Texto via teclado. */
.sage-builder-page .sage-builder-text a:focus-visible {
  outline:3px solid #2563eb;
  outline-offset:3px;
  border-radius:2px;
}


/* Sage 1.7.211: realce legivel para texto selecionado pelo visitante.
   Restrito ao widget Texto; nao altera o conteudo salvo. */
.sage-builder-page .sage-builder-text::selection,
.sage-builder-page .sage-builder-text *::selection {
  background: #bfdbfe;
  color: #102a43;
}
.sage-builder-page .sage-builder-text::-moz-selection,
.sage-builder-page .sage-builder-text *::-moz-selection {
  background: #bfdbfe;
  color: #102a43;
}

/* Sage 1.7.212: identificacao visual de links do widget Texto ao passar
   o mouse; preserva estilos de repouso e o foco de teclado. */
@media (hover: hover) {
  .sage-builder-page .sage-builder-text a:hover {
    text-decoration-line: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
    text-decoration-skip-ink: auto;
  }
}

/* Sage 1.7.213: espaco vertical entre itens de listas HTML do widget Texto
   em telas pequenas. Nao afeta numeros digitados como texto simples. */
@media (max-width: 600px) {
  .sage-builder-page .sage-builder-text :is(ul, ol) > li + li {
    margin-block-start: .4em;
  }
}


/* Sage 1.7.214: numeros e marcadores permanecem visiveis quando
   itens do widget Texto ocupam varias linhas em celulares. */
@media (max-width: 600px) {
  .sage-builder-page .sage-builder-text :is(ul, ol) {
    list-style-position: outside;
    padding-inline-start: 1.6em;
    padding-inline-end: .35em;
  }
  .sage-builder-page .sage-builder-text :is(ul, ol) > li {
    padding-inline-start: .15em;
    min-width: 0;
    overflow-wrap: anywhere;
  }
}

/* Sage 1.7.215: espaco e alinhamento de listas no widget Texto em tablets.
   Ajuste restrito a 601-900px; nao altera o conteudo salvo. */
@media (min-width: 601px) and (max-width: 900px) {
  .sage-builder-page .sage-builder-text :is(ul, ol) {
    list-style-position: outside;
    padding-inline-start: 1.6em;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sage-builder-page .sage-builder-text :is(ul, ol) > li {
    overflow-wrap: anywhere;
    padding-inline-start: .15em;
  }
  .sage-builder-page .sage-builder-text :is(ul, ol) > li + li {
    margin-block-start: .3em;
  }
}


/* Sage 1.7.216: preserve itens de listas do widget Texto na impressao.
   Apenas visualizacao de impressao; sem modificar paginas ou editor. */
@media print {
  .sage-builder-page .sage-builder-text :is(ul, ol) > li {
    break-inside: avoid;
    page-break-inside: avoid;
    overflow-wrap: anywhere;
  }
}


/* Sage 1.7.217: links do widget Texto legiveis em impressao,
   sem afetar as cores e estilos da pagina na tela. */
@media print {
  .sage-builder-page .sage-builder-text a:link,
  .sage-builder-page .sage-builder-text a:visited {
    color: #111 !important;
    text-decoration: underline !important;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    overflow-wrap: anywhere;
  }
}

/* Sage 1.7.218: melhor fluxo de leitura na impressao.
   Restrito ao conteudo Sage; respeita limites do navegador/impressora. */
@media print {
  .sage-builder-page .sage-builder-text p {
    orphans: 3;
    widows: 3;
  }
  .sage-builder-page .sage-builder-text :is(h1,h2,h3,h4,h5,h6),
  .sage-builder-page > :is(h1,h2,h3,h4,h5,h6),
  .sage-builder-page .sage-responsive-text:is(h1,h2,h3,h4,h5,h6) {
    break-after: avoid;
    page-break-after: avoid;
  }
}


/* Sage 1.7.219: evita a divisao de figuras e imagens entre folhas
   durante a impressao, quando seu tamanho permite. */
@media print {
  .sage-builder-page figure,
  .sage-builder-page figure img,
  .sage-builder-page .sage-builder-image {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .sage-builder-page figure img,
  .sage-builder-page .sage-builder-image img {
    max-width: 100% !important;
    height: auto !important;
  }
}


/* Sage 1.7.220: centraliza imagens e figuras dentro da area de impressao.
   Somente impressao; preserva tamanho proporcional e layout de tela. */
@media print {
  .sage-builder-page figure,
  .sage-builder-page .sage-builder-image {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .sage-builder-page figure > img,
  .sage-builder-page .sage-builder-image > img {
    display: block;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
    height: auto !important;
  }
}


/* Sage 1.7.221: legendas de figuras legiveis e alinhadas na impressao.
   Mantem comportamento normal na tela e nao altera imagens sem legenda. */
@media print {
  .sage-builder-page figure figcaption,
  .sage-builder-page .sage-builder-image figcaption {
    display: block;
    text-align: center;
    max-width: 100%;
    margin: 6px auto 0;
    color: #222 !important;
    font-size: 0.9em;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }
}


/* Sage 1.7.222 — legenda visível no widget Imagem, independente do texto alternativo. */
.sage-builder-page figure .sage-image-caption,
.sage-image-resize-box .sage-image-caption {
  display: block;
  text-align: center;
  margin: 8px auto 0;
  max-width: 100%;
  line-height: 1.4;
  color: inherit;
  overflow-wrap: anywhere;
}
@media print {
 .sage-builder-page figure .sage-image-caption {color:#222 !important; break-inside:avoid;}
}

/* Sage 1.7.223 — legendas responsivas em telas pequenas. */
@media (max-width: 600px) {
  .sage-builder-page figure .sage-image-caption {
    display:block;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    padding:0 8px;
    text-align:center;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
}

/* Sage 1.7.225: opcao de alinhamento da legenda respeitada tambem no frontend. */
.sage-builder-page figure .sage-image-caption[style*="text-align"]{max-width:100%;overflow-wrap:anywhere;}
