/* Padrão visual das páginas de soluções; carregado apenas nas páginas adotadas. */
.solution-page { --solution-ink:#152c44; --solution-muted:#52677d; --solution-blue:#1172b7; --solution-line:#dfe7ef; color:var(--solution-ink); }
.solution-page main { overflow:hidden; }
.solution-page .globalNav:not(.dropdownActive) .dropdownRoot,
.solution-page .globalNav .navSection.mobile:not(.globalPopupActive) .popup { display:none; }
.solution-page .footer a { overflow-wrap:anywhere; }
.solution-page main a:focus-visible,.solution-page main summary:focus-visible { outline:3px solid #155fa0; outline-offset:5px; }
.solution-page .solution-eyebrow { color:var(--solution-blue); font-size:.76rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; margin-bottom:20px; }
.solution-hero { background:linear-gradient(135deg,#f6faff,#edf5fe 65%,#f8fbff); padding:72px 0 64px; }
.solution-hero__grid { display:grid; grid-template-columns:1fr 1.14fr; align-items:center; gap:44px; }
.solution-hero h1 { font-size:clamp(2.4rem,3.9vw,3.7rem); line-height:1.1; letter-spacing:-.045em; font-weight:750; margin-bottom:24px; }
.solution-hero h1 span { color:var(--solution-blue); }
.solution-page .solution-lead { color:var(--solution-muted); font-size:1.1rem; line-height:1.8; max-width:490px; margin-bottom:28px; }
.solution-actions { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.solution-page .solution-actions .btn { padding:13px 18px; border-radius:6px; font-size:.9rem; font-weight:650; display:inline-flex; gap:12px; align-items:center; justify-content:center; }
.solution-page .btn-primary { background:var(--solution-blue); border-color:var(--solution-blue); }
.solution-page .btn-primary:hover { background:#0b5c99; border-color:#0b5c99; }
.solution-page .btn-outline-primary { color:var(--solution-blue); border-color:var(--solution-blue); }
.solution-page .btn-outline-primary:hover { background:var(--solution-blue); color:#fff; }
.solution-page main .solution-text-link { color:var(--solution-blue)!important; display:inline-flex; align-items:center; gap:9px; font-size:.9rem; font-weight:650; text-underline-offset:4px; }
.solution-page main .solution-text-link:hover { text-decoration:underline!important; }
.solution-hero .solution-text-link { margin-top:24px; }
.solution-hero figure { margin:0; min-width:0; }
.solution-screen { border:1px solid #d4e1ee; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 18px 52px #1b4f7f13; }
.solution-screen__bar { display:flex; justify-content:space-between; align-items:center; gap:12px; color:#6b7d91; font-size:.65rem; padding:12px 14px; border-bottom:1px solid #e7edf4; background:#fff; }
.solution-screen__dots { display:flex; gap:5px; }
.solution-screen__dots i { width:6px; height:6px; background:#d5dfe9; border-radius:50%; }
.solution-screen__image { display:block; overflow:hidden; aspect-ratio:1.48; }
.solution-screen__image img { display:block; width:100%; height:auto; margin-top:-8%; }
.solution-page figcaption { margin-top:14px; color:#697d91; font-size:.73rem; line-height:1.6; }
.solution-nav { border-bottom:1px solid var(--solution-line); background:#fff; }
.solution-nav .container { display:flex; gap:38px; padding-top:20px; padding-bottom:20px; overflow-x:auto; }
.solution-page main .solution-nav a { color:var(--solution-muted)!important; white-space:nowrap; font-size:.85rem; font-weight:600; }
.solution-page main .solution-nav a:hover { color:var(--solution-blue)!important; }
.solution-section { padding:88px 0; scroll-margin-top:100px; }
.solution-section--tint { background:#f7f9fc; }
.solution-section__intro { max-width:700px; margin-bottom:42px; }
.solution-page h2 { font-size:clamp(1.9rem,3vw,2.65rem); line-height:1.18; letter-spacing:-.035em; font-weight:750; margin-bottom:20px; }
.solution-page .solution-section p { color:var(--solution-muted); line-height:1.75; }
.solution-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; }
.solution-benefits article+article { border-left:1px solid var(--solution-line); padding-left:30px; }
.solution-feature-icon { display:inline-flex; width:38px; height:38px; align-items:center; justify-content:center; margin-bottom:18px; color:var(--solution-blue); font-size:1.5rem; }
.solution-page h3 { font-size:1.13rem; line-height:1.4; font-weight:700; margin-bottom:12px; letter-spacing:-.015em; }
.solution-benefits p { font-size:.96rem; margin-bottom:0; }
.solution-split { display:grid; grid-template-columns:1.02fr 1fr; align-items:center; gap:76px; }
.solution-customer-visual { margin:0; min-width:0; }
.solution-customer-visual img { width:100%; height:auto; display:block; }
.solution-body-lead { font-size:1.05rem; }
.solution-checks { padding:0; margin:28px 0; list-style:none; }
.solution-checks li { display:flex; gap:14px; margin-bottom:24px; }
.solution-checks li>i { font-size:1.2rem; color:var(--solution-blue); }
.solution-checks strong,.solution-checks span { display:block; }
.solution-checks strong { font-size:.98rem; margin-bottom:5px; }
.solution-checks span { color:var(--solution-muted); font-size:.93rem; line-height:1.65; }
.solution-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; margin:0; padding:0; list-style:none; counter-reset:step; }
.solution-steps li { border-top:2px solid #c9dff0; padding-top:24px; }
.solution-step-number { font-size:.88rem; letter-spacing:.08em; color:var(--solution-blue); display:block; margin-bottom:22px; font-weight:750; }
.solution-steps p { font-size:.96rem; }
.solution-faq-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; }
.solution-faq details { padding:21px 0; border-top:1px solid var(--solution-line); }
.solution-faq details:last-child { border-bottom:1px solid var(--solution-line); }
.solution-faq summary { display:flex; justify-content:space-between; align-items:center; gap:20px; list-style:none; font-size:1rem; font-weight:650; cursor:pointer; }
.solution-faq summary::-webkit-details-marker { display:none; }
.solution-faq summary::after { content:'+'; font-weight:400; color:var(--solution-blue); font-size:1.5rem; flex-shrink:0; }
.solution-faq details[open] summary::after { content:'−'; }
.solution-faq details p { margin:15px 28px 0 0; font-size:.94rem; }
.solution-final { background:#102f4c; }
.solution-final__content { max-width:850px; }
.solution-page .solution-final h2 { color:white; }
.solution-page .solution-final .solution-eyebrow { color:#8ecaf5; }
.solution-page .solution-final p { color:#c1d2e2; max-width:620px; }
.solution-final .solution-actions { margin-top:28px; }
@media(min-width:1400px) { .solution-hero__visual { transform:translateX(24px); } }
@media(max-width:991px) {
  .solution-hero { padding:48px 0; }
  .solution-hero__grid { grid-template-columns:1fr; gap:38px; }
  .solution-hero__copy { max-width:660px; }
  .solution-hero .solution-lead { max-width:600px; }
  .solution-hero__visual { max-width:720px; }
  .solution-section { padding:64px 0; }
  .solution-split { gap:38px; }
  .solution-faq-layout { grid-template-columns:1fr; gap:32px; }
  .solution-benefits { gap:24px; }
  .solution-benefits article+article { padding-left:22px; }
}
@media(max-width:767px) {
  .solution-page .globalNav .popupContainer { white-space:normal; max-width:calc(100vw - 20px); }
  .solution-page .globalNav .mobileProductsList>ul { flex-basis:100%; min-width:0; padding-left:0; list-style:none; }
  .solution-page .globalNav .mobileProductsList a { font-size:1rem; line-height:1.5; padding:10px 24px; }
  .solution-hero h1 { font-size:2.65rem; }
  .solution-benefits,.solution-steps,.solution-split { grid-template-columns:1fr; }
  .solution-benefits article+article { border-left:0; padding:22px 0 0; border-top:1px solid var(--solution-line); }
  .solution-benefits article { display:block; }
  .solution-feature-icon { margin-bottom:10px; }
  .solution-split__copy { grid-row:1; }
  .solution-customer-visual { max-width:560px; }
  .solution-nav .container { gap:25px; }
  .solution-page .solution-eyebrow { margin-bottom:15px; }
}
@media(max-width:420px) {
  .solution-hero h1 { font-size:2.35rem; }
  .solution-page .solution-actions { align-items:stretch; flex-direction:column; }
  .solution-page .solution-actions .btn { width:100%; }
  .solution-screen__bar { font-size:.6rem; }
}
