/* Contain flex/grid content in its own column rather than expanding the page. */
html:has(body[data-brand]){overflow-x:clip}
body[data-brand] :is(main,.wrap,.news-wrap,.header-shell,.context-nav){min-width:0}
body[data-brand] main{max-width:100%}
body[data-brand] :is(.hero,.sim-layout,.decision-grid,.steps,.comparison,.comparison-options,.about,.faq,.tec-hero,.project,.solutions,.growth-services,.project-quiz,.news-card,.source-row)>*{min-width:0}
body[data-brand] :is(.header-shell,.hero,.tec-hero,.project){grid-template-columns:repeat(2,minmax(0,1fr))}
body[data-brand] .header-shell{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
body[data-brand] :is(.section-heading,.news-bridge,.tec-bridge,.footer-bottom,.context-nav){flex-wrap:wrap}
body[data-brand] :is(.news-bridge,.tec-bridge)>*{min-width:0;max-width:100%}
body[data-brand] :is(.news-bridge a,.tec-bridge a,.button){white-space:normal;overflow-wrap:anywhere;max-width:100%}
body[data-brand] :is(input,select,textarea,progress){min-width:0;max-width:100%}
body[data-brand] :is(p,h1,h2,h3,dd,figcaption,a){overflow-wrap:break-word}
body[data-brand] :is(img,video,iframe){max-width:100%}
body[data-brand] .quiz-progress progress{flex:1;width:0;min-width:0}
body[data-brand] .brand-curtain{contain:paint}
@media(min-width:1001px){
 body[data-brand="patrimonial"] .planning-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;max-width:1200px;margin:24px auto 40px;padding:0 32px;align-items:start}
 body[data-brand="patrimonial"] .planning-workspace .conversion-hero{display:contents}
 body[data-brand="patrimonial"] .planning-workspace .hero-copy{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 32px;max-width:none;width:100%;padding:28px 32px;background:var(--brand);border-radius:20px}
 body[data-brand="patrimonial"] .planning-workspace .hero-copy .eyebrow{grid-column:1;margin:0}
 body[data-brand="patrimonial"] .planning-workspace .hero-copy h1{grid-column:1;grid-row:2/4;font-size:clamp(36px,3.5vw,48px);margin:0;line-height:1.08}
 body[data-brand="patrimonial"] .planning-workspace .hero-copy .lead{grid-column:2;grid-row:2;align-self:end;max-width:none;margin:0;font-size:1.125rem}
 body[data-brand="patrimonial"] .planning-workspace .hero-copy .micro{grid-column:2;grid-row:3;margin:0}
 body[data-brand="patrimonial"] .planning-workspace .sim-card{width:100%;margin:0;align-self:start}
 body[data-brand="patrimonial"] .planning-workspace #sugestoes{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;margin:0;border-radius:20px;align-self:start}
 body[data-brand="patrimonial"] .planning-workspace .quiz-scene{aspect-ratio:16/9}
 body[data-brand="patrimonial"] .planning-workspace .quiz-frame{background-size:500% auto;background-position-y:center}
 body[data-brand="patrimonial"] .planning-workspace .quiz-body{padding:24px}
 body[data-brand="patrimonial"] .planning-workspace .quiz-body h2{font-size:1.625rem}
}
@media(max-width:1000px){
 body[data-brand] .header-shell{grid-template-columns:minmax(0,1fr) auto}
 body[data-brand="patrimonial"] .conversion-hero{grid-template-columns:minmax(0,1fr);gap:20px}
 body[data-brand="patrimonial"] .conversion-hero .hero-copy{padding-top:0;max-width:none}
 body[data-brand="patrimonial"] .conversion-hero .hero-copy h1{font-size:clamp(34px,5vw,48px);margin-bottom:12px}
 body[data-brand="patrimonial"] .conversion-hero .hero-copy .lead{max-width:none}
}
@media(max-width:850px){body[data-brand="tec"] :is(.tec-hero,.project){grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){body[data-brand] .hero{grid-template-columns:minmax(0,1fr)}}
