/* Estilos exclusivos do RuptixBPO. Fonte e cabeçalho herdados do site. */
html{scroll-padding-top:95px}.bpo-skip{position:absolute;left:12px;top:-100px;z-index:1100;background:#fff;padding:12px}.bpo-skip:focus{top:12px}.bpo-page{--bpo-accent:#ff8000}.bpo-page a:focus-visible,.bpo-page summary:focus-visible{outline:3px solid #ff8000;outline-offset:5px}.bpo-page p{line-height:1.7}.bpo-page h2{line-height:1.2}.bpo-page h3{font-size:1.2rem;line-height:1.4;margin-bottom:12px}.bpo-hero{background:#0f0f0f;color:#fff;padding:24px 0 65px}.bpo-breadcrumb{display:flex;gap:12px;font-size:.8rem;color:#bbb;margin-bottom:36px}.bpo-breadcrumb a{color:inherit}.bpo-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center}.bpo-kicker{font-size:.68rem;letter-spacing:.12em;font-weight:700;color:#a84b00;margin-bottom:24px}.bpo-hero .bpo-kicker,.bpo-dark .bpo-kicker{color:#ff9a35}.bpo-hero h1{font-size:3.2rem;font-size:clamp(2.4rem,4.2vw,3.5rem);line-height:1.12;margin-bottom:25px}.bpo-hero h1 span{color:#ff8000}.bpo-lead{font-size:1.15rem;color:#ccc}.bpo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin:30px 0}.bpo-actions .btn{font-size:.95rem;padding:14px 22px}.bpo-link{color:#fff;font-size:.88rem;text-underline-offset:5px}.bpo-hero-note{color:#aaa;font-size:.85rem}.bpo-diagram{background:#1a1c1c;border:1px solid #414343;border-radius:8px;padding:24px;min-width:0}.bpo-diagram-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.bpo-diagram-heading strong{font-size:1.4rem}.bpo-diagram-heading strong span{color:#ff8000}.bpo-diagram-heading>span{font-size:.6rem;letter-spacing:.1em;color:#bbb}.bpo-process>div{border:1px solid #555;border-left:3px solid #ff8000;background:#222525;padding:17px}.bpo-process small{display:block;color:#ffb366;font-size:.65rem;letter-spacing:.07em;margin-bottom:5px}.bpo-process strong{font-size:1rem}.bpo-process p{color:#bbb;font-size:.8rem;margin-top:5px}.bpo-arrow{display:block;text-align:center;color:#ff8000;font-size:1.3rem;line-height:1.6}.bpo-diagram figcaption{font-size:.7rem;color:#aaa;margin-top:20px}.bpo-section{padding:65px 0;background:#fff}.bpo-muted{background:#f9f9f9}.bpo-intro{display:grid;grid-template-columns:1fr 2.3fr;gap:45px}.bpo-intro h2{text-align:left}.bpo-intro p+p{margin-top:18px}.bpo-section-lead{max-width:740px;margin:0 auto;color:#555;text-align:center}.bpo-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:35px}.bpo-features article{background:#fff;border-top:3px solid #ff8000;padding:26px;border-radius:10px;box-shadow:0 4px 14px #00000014}.bpo-number{display:block;color:#a84b00;font-size:.8rem;margin-bottom:15px}.bpo-features p{color:#555}.bpo-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;list-style:none;margin-top:36px}.bpo-steps li>span{font-size:2rem;color:#a84b00;display:block;margin-bottom:16px}.bpo-steps p{color:#555}.bpo-clarification{margin-top:36px;padding:22px 25px;background:#f6f6f6;border-left:3px solid #ff8000}.bpo-clarification p{font-size:.95rem;margin-top:7px;color:#555}.bpo-dark{background:#161818;color:#eee}.bpo-organization{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.bpo-dark h2{color:#fff;text-align:left}.bpo-dark p{color:#ccc}.bpo-status{border:1px solid #414343;padding:26px;border-radius:8px}.bpo-status h3{color:#fff}.bpo-status ul{list-style:none}.bpo-status li{padding:13px 0;border-top:1px solid #414343}.bpo-status li span{font-size:.9rem;font-weight:600;color:#ffb366}.bpo-status li p{font-size:.85rem;margin-top:3px}.bpo-faq{max-width:850px;margin:30px auto 0}.bpo-faq details{padding:20px 0;border-bottom:1px solid #ddd}.bpo-faq summary{font-weight:600;font-size:1.05rem;cursor:pointer}.bpo-faq p{padding-top:15px;color:#555}.bpo-closing{background:#0f0f0f;color:white;text-align:center;padding:60px 0}.bpo-closing h2{color:white;max-width:800px;margin:0 auto 20px}.bpo-closing p{color:#ccc;margin-bottom:28px}@media(max-width:900px){.bpo-features{grid-template-columns:repeat(2,minmax(0,1fr))}.bpo-hero-grid{gap:30px}.bpo-hero h1{font-size:2.6rem}}@media(max-width:800px){.bpo-hero-grid,.bpo-intro,.bpo-organization{grid-template-columns:1fr;gap:30px}.bpo-diagram{max-width:500px;width:100%;margin:auto}.bpo-intro .bpo-kicker{margin-bottom:0}.bpo-steps{gap:22px}.bpo-section{padding:48px 0}}@media(max-width:560px){.bpo-features,.bpo-steps{grid-template-columns:1fr}.bpo-hero h1{font-size:2.2rem}.bpo-lead{font-size:1.05rem}.bpo-diagram{padding:18px}.bpo-diagram-heading{flex-wrap:wrap}.bpo-steps{gap:28px}.bpo-hero{padding-bottom:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Prioridade sobre os fundos alternados do CSS institucional. */
.bpo-page .bpo-section{background:#fff}.bpo-page .bpo-muted{background:#f9f9f9}.bpo-page .bpo-hero,.bpo-page .bpo-closing{background:#0f0f0f}.bpo-page .bpo-dark{background:#161818}

/* Revisão: seções seguem o padrão visual do RuptixStream. */
/* RuptixStream: extensão do estilo institucional, sem redefinir cabeçalho ou fonte. */
html{scroll-padding-top:90px}
.skip{position:absolute;top:-100px;left:12px;z-index:1100;background:#fff;padding:12px}.skip:focus{top:12px}
a:focus-visible,summary:focus-visible{outline:3px solid #f97316;outline-offset:4px}
#hero .stream-reference{margin-top:24px;font-size:.95rem;color:#ccc}
#hero .stream-reference a{color:#fff;font-weight:600;text-underline-offset:4px}
#hero .hero-brand-name{overflow-wrap:anywhere}
main .section{padding:60px 0;background:#fff}
main .features,main .implementation{background:#f9f9f9}
main .intro>div{max-width:800px;margin:auto}
main p{line-height:1.7}
main .intro p{font-size:1.15rem;margin-bottom:18px}
main .feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:35px}
main .feature-grid article,main .uses article{padding:26px;background:#fff;border-radius:10px;box-shadow:0 4px 14px rgba(0,0,0,.08)}
main h3{font-size:1.2rem;color:#333;line-height:1.4;margin-bottom:12px}
main .feature-grid article{border-top:3px solid #f97316}
main .feature-grid p,main .uses p{font-size:1rem;color:#555}
main .note{font-size:.9rem;color:#666;text-align:center;margin-top:25px}
main .case-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
main .case-grid figure{margin:0}
main .case-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
main figcaption{font-size:.8rem;color:#666;margin-top:8px}
main .case-grid p{margin-bottom:16px}
main .case-grid h2{text-align:left}
main .large{font-size:1.15rem}
main .text-link{color:#a34809;font-weight:600;text-underline-offset:4px}
main .section-lead{max-width:700px;margin:0 auto 32px;text-align:center;font-size:1.15rem;color:#555}
main .uses{display:grid;grid-template-columns:1fr 1fr;gap:24px}
main .implementation ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:35px 0 0;counter-reset:steps}
main .implementation li{counter-increment:steps;text-align:center}
main .implementation li:before{content:counter(steps);display:grid;place-items:center;width:40px;height:40px;background:#f97316;color:#fff;border-radius:50%;font-weight:700;margin:0 auto 18px}
main .implementation p{color:#555}
main .faq{max-width:900px}
main details{padding:20px 0;border-bottom:1px solid #ddd}
main summary{font-size:1.05rem;font-weight:600;cursor:pointer}
main details p{padding:14px 0 0;color:#555}
main .closing{background:#f97316;color:#fff;text-align:center;padding:60px 0}
main .closing h2{color:#fff}
main .closing p{max-width:700px;margin:0 auto 28px;font-size:1.15rem}
main .closing .btn{background:#fff;color:#a34809}
@media(max-width:992px){main .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){main .case-grid{grid-template-columns:1fr}main .case-grid h2{text-align:center}main .case-grid figure{max-width:560px;margin:auto}main .implementation ol{grid-template-columns:1fr}main .implementation li{max-width:500px;margin:auto}main .section{padding:45px 0}#hero .hero-brand-name{font-size:3rem}}
@media(max-width:640px){main .feature-grid,main .uses{grid-template-columns:1fr}main .feature-grid article,main .uses article{padding:22px}#hero .hero-brand-name{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


.bpo-page .bpo-hero{padding:35px 0 60px}.bpo-breadcrumb{margin-bottom:25px}.bpo-page .bpo-hero h1{font-size:clamp(2.6rem,4.2vw,3.5rem)}
.bpo-page .bpo-hub{background:#222525;border:1px solid #595b5b;text-align:center;padding:26px 12px}.bpo-hub small{font-size:.65rem;color:#bbb;letter-spacing:.09em}.bpo-hub strong{display:block;font-size:1.25rem;margin:9px 0;color:#fff}.bpo-hub p{font-size:.8rem;color:#ccc}.bpo-hub-line{height:28px;width:1px;background:#f97316;margin:auto}.bpo-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid #f97316;padding-top:18px}.bpo-pillars div{padding:15px 5px;text-align:center;background:#292b2b;border:1px solid #4a4c4c;border-radius:4px}.bpo-pillars strong{font-size:.85rem;color:#ffad66}.bpo-pillars small{display:block;font-size:.65rem;color:#ccc;margin-top:5px}.bpo-visual-caption{font-size:1rem;text-align:center;color:#eee;margin:25px 0 16px}.bpo-page .bpo-diagram figcaption{font-size:.7rem;color:#aaa}
.bpo-page .intro>div{max-width:1100px}.bpo-page .intro .container>div{max-width:800px;margin:auto}.bpo-page .feature-grid p{color:#555}.bpo-page .case-grid p{margin-bottom:16px}.bpo-example{background:#f7f7f7;border:1px solid #e2e2e2;border-radius:10px;padding:30px}.bpo-example h3{font-size:1.4rem}.bpo-example ol{list-style:none;counter-reset:example}.bpo-example li{position:relative;padding:20px 0 20px 46px;border-top:1px solid #ddd;counter-increment:example}.bpo-example li:before{content:counter(example);position:absolute;left:0;top:22px;width:28px;height:28px;border-radius:50%;background:#f97316;color:#fff;text-align:center;line-height:28px;font-size:.85rem}.bpo-example li strong,.bpo-example li span{display:block}.bpo-example li span{color:#555;font-size:.95rem;margin-top:5px}.bpo-page .faq{margin:auto}.bpo-page .closing{background:#f97316}.bpo-page .closing p{color:white}.bpo-page .closing .btn{background:white;color:#a34809}.bpo-page .closing h2{color:white}.bpo-page .section.features,.bpo-page .section.implementation{background:#f9f9f9}
@media(max-width:640px){.bpo-page .bpo-hero h1{font-size:2.2rem}.bpo-example{padding:22px}.bpo-pillars{gap:6px}.bpo-pillars strong{font-size:.75rem}.bpo-pillars small{font-size:.6rem}}
