/* Extensões do tema para os fluxos do novo domínio. */
.breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:30px; color:#616b74; font-size:14px; }
.service-content a:not(.button):not(.support-contact-card__number):not(.manage-card__action):not(.manage-card__portal) { color:#1258a7; text-underline-offset:4px; }
.service-content p a,.service-content li a { text-decoration:underline; }
.content-section { margin:48px 0; }
.content-section:first-child { margin-top:0; }
.service-content .page-jumps { display:flex; flex-wrap:wrap; gap:10px 20px; border-block:1px solid #dde3e7; padding:18px 0; margin:30px 0; }
.page-jumps a { text-decoration:underline; font-size:15px; }
.source-note { margin:40px 0; padding:24px; background:#f5f7f9; border-left:3px solid #1769cb; }
.service-content .source-note h2 { font-size:20px; margin:0 0 12px; }
.source-note li,.source-note p { font-size:14px; }
.route-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:24px 0; }
.route-grid > a { display:block; padding:24px; border:1px solid #dae0e4; border-radius:8px; background:#f6f8fa; }
.route-grid > a:hover { border-color:#1769cb; background:#edf4fb; }
.route-grid span { display:block; font-size:12px; letter-spacing:.08em; color:#68717a; }
.route-grid strong { display:block; font-size:24px; font-weight:400; margin:12px 0; }
.route-grid p { margin:0; }
.new-home .service-content { padding-top:28px; }
.new-home .manage-grid { margin:28px 0; }
.new-home .manage-card__portal { text-decoration:underline; text-underline-offset:4px; }
.support-contact-card .support-other { display:block; align-self:center; color:#515a60; text-align:center; margin:0; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.content-section table { width:100%; border-collapse:collapse; margin:24px 0; font-size:16px; }
.content-section th,.content-section td { text-align:left; padding:16px; border-bottom:1px solid #dce2e7; vertical-align:top; line-height:1.6; }
.content-section th { background:#f1f5f9; font-weight:600; }
.content-section .table-wrap { overflow:auto; }
.content-section ul,.content-section ol { padding-left:24px; }
.content-section li + li { margin-top:10px; }
.content-section .service-actions { margin-bottom:10px; }
@media (max-width:820px) { .route-grid { grid-template-columns:1fr; } .service-content .breadcrumbs { margin-bottom:24px; } .content-section { margin-block:36px; } .service-hero .hero-copy { width:88%; } }
@media (max-width:420px) { .hero-copy h1 { font-size:32px; } }
@media print { .hero,.bmw-footer,.support-section,.floating-actions,.breadcrumbs,.page-jumps,.skip-link { display:none!important; } .service-content { width:100%; padding:0; } body { color:#000; } .content-section { break-inside:avoid; } a { color:#000!important; } }

.finance-enable-group { border:0; padding:0; margin:0; min-width:0; }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (min-width:821px) { .new-home .service-content { width:min(83.75%,1320px); } }

.support-contact-card__email { display:block; max-width:100%; overflow-wrap:anywhere; font-size:16px; line-height:1.5; }

/* Contatos: hierarquia consistente e área clicável por canal. */
.support-contact-card { gap:22px; padding:28px; min-width:0; box-shadow:0 6px 24px rgba(16,34,51,.05); }
.support-contact-methods { width:100%; min-width:0; }
.service-content .support-contact-method { display:flex; align-items:center; gap:14px; min-height:58px; padding:10px 0; color:#20272d; text-decoration:none; }
.support-contact-method + .support-contact-method { border-top:1px solid #e7eaed; margin-top:10px; padding-top:20px; }
.support-contact-method svg { width:22px; height:22px; flex:0 0 22px; stroke:#586773; stroke-width:1.5; fill:none; stroke-linecap:round; stroke-linejoin:round; }
.support-contact-method__text { display:flex; flex-direction:column; gap:4px; min-width:0; }
.support-contact-method__label { font-size:13px; font-weight:400; color:#626c74; line-height:1.4; }
.support-contact-card .support-contact-card__number { font-size:clamp(22px,2vw,27px); font-weight:400; letter-spacing:0; line-height:1.35; }
.support-contact-card .support-contact-card__email { font-size:15px; line-height:1.5; color:#20272d; overflow-wrap:anywhere; }
.support-contact-method:hover .support-contact-card__number,.support-contact-method:hover .support-contact-card__email { color:#1258a7; text-decoration:underline; text-underline-offset:4px; }
.support-contact-method:focus-visible { outline:2px solid #1769cb; outline-offset:5px; border-radius:3px; }
@media(max-width:420px) { .support-contact-card { padding:22px 18px; gap:20px; } .support-contact-method { gap:11px; } .support-contact-card .support-contact-card__email { font-size:14px; } }

/* Menu flutuante: textos mais leves e sombra de contato mais definida. */
.floating-actions__menu { padding:12px; gap:4px; border-radius:20px; box-shadow:0 18px 48px rgba(16,34,51,.23),0 3px 10px rgba(16,34,51,.08); }
.floating-actions__link { gap:12px; min-height:48px; padding:7px 10px; font-size:15px; font-weight:400; line-height:1.4; letter-spacing:.005em; white-space:normal; }
.floating-actions__link > span:last-child { min-width:0; }
.floating-actions__link--whatsapp { margin-top:5px; border-top:1px solid #e5edf4; border-radius:0 0 12px 12px; padding-top:13px; color:#1258a7; font-weight:500; }
.floating-actions__toggle { box-shadow:0 0 0 6px rgba(255,255,255,.16),0 12px 38px rgba(0,0,0,.34),0 3px 10px rgba(0,0,0,.18); }
.floating-actions__toggle:hover,.floating-actions.is-open .floating-actions__toggle { box-shadow:0 0 0 7px rgba(255,255,255,.2),0 16px 44px rgba(0,0,0,.4),0 4px 12px rgba(0,0,0,.2); }
@media(max-width:420px) { .floating-actions__menu { width:min(310px,calc(100vw - 32px)); box-sizing:border-box; } .floating-actions__link { font-size:15px; } }

.contact-channels,.contact-services { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin:24px 0; }
.contact-channel { display:flex; flex-direction:column; align-items:flex-start; gap:16px; min-width:0; padding:28px; border:1px solid #e0e5e9; border-radius:12px; background:#f6f8fa; }
.service-content .contact-channel h3 { margin:0; font-size:24px; line-height:1.3; font-weight:400; }
.service-content .contact-channel p { margin:0; }
.contact-channel .button { margin-top:auto; max-width:100%; white-space:normal; }
.contact-channel__number { font-size:27px; line-height:1.3; text-decoration:none; }
.contact-channel__email { font-size:18px; overflow-wrap:anywhere; max-width:100%; }
@media(max-width:700px) { .contact-channels,.contact-services { grid-template-columns:1fr; gap:16px; } .contact-channel { padding:22px; } .contact-channel .button { width:100%; } }

/* Content buttons keep their natural height, including inside vertical cards. */
.service-content .button { flex:0 0 auto; width:fit-content; max-width:100%; min-width:0; min-height:44px; height:auto; padding:10px 18px; font-size:15px; line-height:1.4; white-space:normal; }
.service-content .service-actions { justify-items:start; align-items:start; }

/* Diretório de serviços e próximos passos entre intenções distintas. */
.related-services { padding:28px; background:#f1f3f4; border-radius:18px; }
.service-content .related-services > h2 { margin-top:0; }
.related-services__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.related-services__grid article { min-width:0; padding:24px; background:#fff; border:1px solid #dfe4e8; border-radius:14px; box-shadow:0 5px 18px rgba(16,34,51,.04); }
.service-content .related-services__grid h3 { margin:0 0 14px; font-size:24px; line-height:1.35; font-weight:400; }
.related-services__grid h3 a { text-decoration:underline; }
.service-content .related-services__grid p { margin:0; font-size:17px; line-height:1.6; }
@media(max-width:1000px) { .related-services__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .related-services { padding:22px 18px; } .related-services__grid { grid-template-columns:1fr; gap:16px; } .related-services__grid article { padding:24px; } }

/* Guias: categorias na central e leitura com links contextuais. */
.guide-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin:26px 0; }
.guide-card { display:flex; flex-direction:column; min-width:0; padding:28px; border:1px solid #dfe4e8; border-radius:14px; background:#f6f8fa; }
.service-content .guide-card h2 { font-size:18px; font-weight:400; color:#59656f; margin:0 0 18px; }
.service-content .guide-card h3 { font-size:26px; line-height:1.3; margin:0 0 16px; font-weight:400; }
.guide-card h3 a { text-decoration:underline; text-underline-offset:4px; }
.guide-card__service { margin-top:auto; padding-top:14px; font-size:15px; text-decoration:underline; }
.service-content .guide-updated { margin:0 0 18px; font-size:14px; color:#616b74; }
.guide-grid > :only-child { grid-column:1 / -1; }
@media(max-width:700px) { .guide-grid { grid-template-columns:1fr; gap:16px; } .guide-card { padding:24px 20px; } .service-content .guide-card h3 { font-size:24px; } }
