/* Tela de login CRF-RO: composição independente e fiel à especificação. */
body.portal-public-access:has(.crf-login-page) {
    display: block !important;
    min-height: 100vh;
    margin: 0;
    padding: 0 !important;
    background: #f3f8fc;
    color: #122a4a;
}

.crf-login-page { width: min(1280px, calc(100% - 64px)); margin: 32px auto 0; }
.crf-login-card { display: grid; grid-template-columns: 48% 52%; min-height: 830px; overflow: hidden; background: #fff; border-radius: 22px; box-shadow: 0 18px 50px rgba(20,55,90,.10); }
.crf-login-brand { position: relative; display: flex; flex-direction: column; overflow: hidden; padding: 52px 58px 34px; color: #fff; background: linear-gradient(145deg,#062e63 0%,#084c88 55%,#075a9f 100%); }
.crf-login-brand::before { content: ""; position: absolute; z-index: 0; inset: 0; opacity: .13; background: radial-gradient(circle, #42d6d0 1.5px, transparent 2px) 26px 20px / 13px 13px no-repeat, repeating-radial-gradient(ellipse at 7% 77%, transparent 0 24px, rgba(255,255,255,.45) 25px 26px, transparent 27px 47px), linear-gradient(124deg, transparent 31%, rgba(64,210,209,.7) 31.15%, transparent 31.35%), linear-gradient(126deg, transparent 34%, rgba(255,255,255,.5) 34.1%, transparent 34.25%); }
.crf-login-brand::after { content: ""; position: absolute; z-index: 0; width: 440px; height: 440px; right: -260px; bottom: -242px; border: 42px solid rgba(255,255,255,.11); border-radius: 50%; }
.crf-login-brand > * { position: relative; z-index: 1; }
.crf-logo-card { display: grid; width: 260px; height: 245px; box-sizing: border-box; margin: 0 auto; padding: 24px; place-items: center; background: #fff; border-radius: 26px; box-shadow: 0 12px 30px rgba(0,0,0,.10); }
.crf-logo-card img { display: block; width: 100%; height: 100%; object-fit: contain; }
.crf-brand-copy { margin-top: 30px; text-align: center; }
.crf-brand-copy > span { display: block; color: #42d6d0; font-size: 13px; font-weight: 700; letter-spacing: 3px; }
.crf-brand-copy h1 { margin: 10px 0 0; color: #fff; font-size: 48px; font-weight: 800; line-height: 1; letter-spacing: -.04em; }
.crf-brand-copy p { max-width: 350px; margin: 18px auto 0; color: rgba(255,255,255,.9); font-size: 16px; line-height: 1.55; }
.crf-brand-copy::after { content: ""; display: block; width: 66px; height: 2px; margin: 18px auto 0; border-radius: 3px; background: #40d2d1; }
.crf-benefits { display: grid; gap: 22px; margin: 30px auto 0; padding: 0; width: min(100%,390px); list-style: none; }
.crf-benefits li { display: grid; grid-template-columns: 54px minmax(0,1fr); column-gap: 16px; align-items: center; }
.crf-benefit-icon { display: grid; width: 52px; height: 52px; box-sizing: border-box; place-items: center; color: #42d6d0; border: 1px solid #42d6d0; border-radius: 50%; background: rgba(66,214,208,.05); }
.crf-benefit-icon svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.crf-benefits strong, .crf-benefits small { display: block; }
.crf-benefits strong { color: #fff; font-size: 16px; font-weight: 700; line-height: 1.25; }
.crf-benefits small { margin-top: 3px; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.4; }
.crf-brand-footer { margin-top: auto; padding-top: 30px; border-top: 1px solid rgba(255,255,255,.12); text-align: center; }
.crf-brand-footer p { margin: 0; color: rgba(255,255,255,.72); font-size: 13px; }
.crf-socials { display: flex; justify-content: center; gap: 10px; margin-top: 12px; }
.crf-socials a { display: grid; width: 34px; height: 34px; place-items: center; color: #42d6d0; border: 1px solid rgba(66,214,208,.55); border-radius: 50%; text-decoration: none; }
.crf-socials svg { width: 16px; height: 16px; fill: currentColor; }
.crf-socials a:nth-child(2) svg { fill: none; stroke: currentColor; stroke-width: 1.8; }

.crf-login-form-panel { box-sizing: border-box; padding: 52px 58px 44px; background: #fff; }
.crf-login-heading { display: flex; align-items: center; gap: 18px; }
.crf-login-heading-icon { display: grid; width: 64px; height: 64px; flex: 0 0 64px; place-items: center; color: #0866c6; border-radius: 50%; background: #edf4fd; }
.crf-login-heading-icon svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.crf-login-heading h2 { margin: 0; color: #082d5d; font-size: 34px; font-weight: 800; line-height: 1.15; letter-spacing: -.035em; }
.crf-login-heading p { margin: 5px 0 0; color: #687994; font-size: 15px; }
.crf-login-form { margin-top: 36px; }
.crf-field { margin-bottom: 20px; }
.crf-field label { display: block; margin-bottom: 7px; color: #071f43; font-size: 14px; font-weight: 700; }
.crf-field-control { position: relative; display: flex; align-items: center; }
.crf-field-icon { position: absolute; z-index: 1; left: 17px; width: 19px; height: 19px; color: #54729d; pointer-events: none; }
.crf-field-icon svg, .crf-password-toggle svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.crf-field-control :is(input,select) { width: 100%; height: 52px; box-sizing: border-box; padding: 0 48px 0 52px; color: #122a4a; border: 1px solid #d6dfea; border-radius: 10px; outline: none; background: #fff; font: inherit; font-size: 14px; }
.crf-field-control input::placeholder { color: #8795aa; }
.crf-field-control :is(input,select):focus { border-color: #1470d7; box-shadow: 0 0 0 3px rgba(20,112,215,.10); }
.crf-select select { appearance: none; }
.crf-select::after { content: "⌄"; position: absolute; right: 18px; color: #54729d; font-size: 22px; pointer-events: none; }
.crf-password-toggle { position: absolute; right: 16px; display: grid; width: 20px; height: 20px; padding: 0; color: #54729d; border: 0; background: transparent; cursor: pointer; }
.crf-login-form .g-recaptcha { margin: 18px 0 24px; }
.crf-login-error { margin: -8px 0 14px; color: #b42318; font-size: 13px; }
.crf-login-submit { display: flex; width: 100%; height: 52px; align-items: center; justify-content: center; gap: 10px; color: #fff; border: 0; border-radius: 10px; background: linear-gradient(90deg,#0969d8 0%,#063b7a 100%); box-shadow: 0 10px 22px rgba(6,82,170,.18); font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; transition: transform .16s ease, box-shadow .16s ease; }
.crf-login-submit:hover { transform: translateY(-1px); box-shadow: 0 12px 28px rgba(6,82,170,.24); }
.crf-login-submit svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.crf-forgot-password { display: block; margin-top: 14px; color: #0866c6; font-size: 14px; font-weight: 700; text-align: center; text-decoration: none; }
.crf-first-access { margin-top: 30px; padding-top: 24px; border-top: 1px solid #e1e7ef; }
.crf-first-access p { margin: 0; color: #7a879b; font-size: 14px; }
.crf-first-access a { display: inline-block; margin-top: 6px; color: #065cb9; font-size: 14px; font-weight: 700; text-decoration: none; }
.crf-quick-actions { display: grid; grid-template-columns: 1.25fr 1fr .65fr; margin-top: 24px; padding-top: 20px; border-top: 1px solid #e1e7ef; }
.crf-quick-actions a { display: flex; min-width: 0; align-items: center; gap: 8px; padding: 0 15px; color: #075cb9; border-left: 1px solid #e2e7ed; font-size: 13px; font-weight: 700; line-height: 1.18; text-decoration: none; }
.crf-quick-actions a:first-child { padding-left: 0; border-left: 0; }
.crf-quick-actions svg { width: 19px; height: 19px; flex: 0 0 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.crf-quick-actions span { display: grid; }

.crf-registration-card, .crf-login-footer { width: min(1280px, calc(100% - 64px)); box-sizing: border-box; margin-right: auto; margin-left: auto; background: #fff; border: 1px solid #dde6ef; border-radius: 17px; box-shadow: 0 5px 18px rgba(30,70,110,.04); }
.crf-registration-card { display: flex; min-height: 84px; align-items: center; justify-content: space-between; gap: 24px; margin-top: 20px; padding: 18px 28px; }
.crf-registration-copy { display: flex; align-items: center; gap: 14px; }
.crf-registration-icon { display: grid; width: 48px; height: 48px; flex: 0 0 48px; place-items: center; color: #10a790; border-radius: 50%; background: #e8faf7; }
.crf-registration-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.crf-registration-copy h3 { margin: 0 0 3px; color: #092b59; font-size: 16px; font-weight: 700; }
.crf-registration-copy p { margin: 0; color: #72819a; font-size: 13px; }
.crf-registration-card > a { display: inline-flex; height: 44px; align-items: center; gap: 9px; padding: 0 22px; box-sizing: border-box; color: #0969d8; border: 1px solid #0969d8; border-radius: 10px; font-size: 14px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.crf-registration-card > a svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.crf-login-footer { display: grid; grid-template-columns: 1fr 1fr; column-gap: 80px; margin-top: 18px; margin-bottom: 32px; padding: 20px 34px; }
.crf-footer-item { display: flex; align-items: center; gap: 15px; }
.crf-footer-icon { display: grid; width: 56px; height: 56px; flex: 0 0 56px; place-items: center; color: #0870d1; border-radius: 50%; background: #eef5fe; }
.crf-footer-icon.is-whatsapp { color: #10a65b; background: #e8f9ef; }
.crf-footer-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.crf-footer-icon.is-whatsapp img { display: block; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
.crf-footer-item div { display: grid; gap: 4px; }
.crf-footer-item strong { color: #092b59; font-size: 14px; }
.crf-footer-item span { color: #72819a; font-size: 13px; }
.crf-footer-item a { color: #0969d8; font-weight: 700; text-decoration: none; }

@media (max-width: 1100px) and (min-width: 768px) { .crf-login-page { width: min(100% - 40px, 1050px); } .crf-login-card { min-height: 760px; } .crf-login-brand { padding: 42px 34px 30px; } .crf-logo-card { width: 210px; height: 205px; } .crf-login-form-panel { padding: 44px 38px; } .crf-login-heading h2 { font-size: 29px; } .crf-benefits { gap: 17px; } .crf-benefits strong { font-size: 14px; } .crf-benefits small { font-size: 12px; } .crf-login-footer, .crf-registration-card { width: min(100% - 40px, 1050px); } }
@media (max-width: 767px) { .crf-login-page { width: calc(100% - 24px); margin-top: 12px; } .crf-login-card { grid-template-columns: 1fr; min-height: 0; border-radius: 18px; } .crf-login-brand { padding: 32px 22px; } .crf-logo-card { width: 190px; height: 180px; padding: 17px; border-radius: 22px; } .crf-brand-copy { margin-top: 25px; } .crf-brand-copy h1 { font-size: 40px; } .crf-brand-copy p { font-size: 14px; } .crf-benefits { gap: 17px; margin-top: 26px; } .crf-benefits li { grid-template-columns: 46px minmax(0,1fr); gap: 12px; } .crf-benefit-icon { width: 44px; height: 44px; } .crf-benefits strong { font-size: 14px; } .crf-benefits small { font-size: 12px; } .crf-brand-footer { margin-top: 28px; padding-top: 22px; } .crf-login-form-panel { padding: 32px 22px; } .crf-login-heading { gap: 13px; } .crf-login-heading-icon { width: 56px; height: 56px; flex-basis: 56px; } .crf-login-heading h2 { font-size: 28px; } .crf-login-form { margin-top: 28px; } .crf-quick-actions { grid-template-columns: 1fr; gap: 14px; } .crf-quick-actions a { padding: 0; border-left: 0; } .crf-registration-card, .crf-login-footer { width: calc(100% - 24px); } .crf-registration-card { flex-direction: column; align-items: stretch; gap: 18px; padding: 18px; } .crf-registration-card > a { justify-content: center; } .crf-login-footer { grid-template-columns: 1fr; row-gap: 22px; padding: 20px; } }


/* Arte institucional fornecida para o fundo do painel esquerdo. */
.crf-login-brand{background:linear-gradient(145deg,rgba(6,46,99,.87) 0%,rgba(8,76,136,.82) 55%,rgba(7,90,159,.84) 100%),url("/img/crf-login-background.png") center center / cover no-repeat!important;}
.crf-login-brand::before{background:linear-gradient(145deg,rgba(6,46,99,.12),rgba(7,90,159,.08))!important;opacity:1!important;}


/* Fundo único: arte fornecida inteira, sem camadas decorativas adicionais. */
.crf-login-brand{background:#062e63 url("/img/crf-login-background.png") center center / contain no-repeat!important;}
.crf-login-brand::before,.crf-login-brand::after{display:none!important;}


/* Arte em orientação vertical: ocupa toda a altura do painel sem distorção. */
.crf-login-brand{background-size:auto 100%!important;background-position:center top!important;}
@media(max-width:767px){.crf-login-brand{background-size:auto 100%!important;background-position:center center!important;}}


/* Ícones institucionais fornecidos pelo CRF-RO, aplicados individualmente. */
.crf-benefit-icon{border:0!important;background:transparent!important;}
.crf-benefit-icon svg{display:none!important;}
.crf-benefits li:nth-child(1) .crf-benefit-icon{background:url("/img/benefit-protocol.png") center / contain no-repeat!important;}
.crf-benefits li:nth-child(2) .crf-benefit-icon{background:url("/img/benefit-certidao.png") center / contain no-repeat!important;}
.crf-benefits li:nth-child(3) .crf-benefit-icon{background:url("/img/benefit-atualizacao.png") center / contain no-repeat!important;}


/* Mesmo painel institucional nas demais páginas públicas que usam o layout de acesso. */
.portal-public-stage .auth-brand.crf-login-brand{align-items:stretch!important;gap:0!important;padding:52px 42px 34px!important;text-align:initial!important;}
.portal-public-stage .auth-brand.crf-login-brand .crf-logo-card{width:220px;height:208px;padding:20px;}
.portal-public-stage .auth-brand.crf-login-brand .crf-benefits{margin-top:28px;}
.portal-public-stage .auth-brand.crf-login-brand .crf-benefits li{width:auto!important;text-align:left!important;}
@media(max-width:780px){.portal-public-stage .auth-brand.crf-login-brand{padding:32px 22px!important;}.portal-public-stage .auth-brand.crf-login-brand .crf-logo-card{width:190px!important;height:180px!important;padding:17px!important;}.portal-public-stage .auth-brand.crf-login-brand .crf-brand-copy h1{font-size:40px!important;}.portal-public-stage .auth-brand.crf-login-brand .crf-benefits{width:min(100%,390px)!important;}}

/* Rodapé institucional da tela inicial. */
.crf-login-footer{grid-template-columns:minmax(0,1.18fr) minmax(0,1fr) minmax(180px,.72fr);column-gap:0;padding:22px 30px}.crf-login-footer>*{min-width:0;padding:0 28px;border-left:1px solid #e6edf4}.crf-login-footer>*:first-child{padding-left:0;border-left:0}.crf-login-footer>*:last-child{padding-right:0}.crf-footer-item{align-items:flex-start}.crf-footer-button{display:inline-flex!important;width:max-content;min-height:29px;margin-top:4px;padding:0 10px;align-items:center;border:1px solid currentColor;border-radius:6px;font-size:11px!important}.crf-footer-button.is-map{color:#135b9f}.crf-footer-button.is-whatsapp{color:#12915c}.crf-footer-social-block{display:flex;flex-direction:column;justify-content:center}.crf-footer-social-block>strong{color:#092b59;font-size:14px}.crf-footer-socials{display:flex;gap:11px;margin-top:15px}.crf-footer-socials a{display:grid;width:34px;height:34px;place-items:center;color:#0a559e;border-radius:50%;background:#eef5fc;text-decoration:none;font-size:15px;font-weight:800}.crf-login-legal{display:flex;width:min(1280px,calc(100% - 64px));min-height:62px;box-sizing:border-box;margin:-20px auto 32px;padding:12px 22px;align-items:center;justify-content:space-between;gap:28px;color:#fff;border-radius:11px;background:#082e63}.crf-login-security strong,.crf-login-security small{display:block}.crf-login-security strong{font-size:11px}.crf-login-security small{margin-top:4px;color:#b9cbe0;font-size:9px}.crf-login-security b{color:#46d1c2}.crf-login-legal p{margin:0;color:#d7e2ef;font-size:10px;text-align:right}
@media(max-width:1100px) and (min-width:768px){.crf-login-footer,.crf-login-legal{width:min(100% - 40px,1050px)}.crf-login-footer{grid-template-columns:1fr 1fr;row-gap:22px}.crf-footer-social-block{grid-column:1/-1;padding-top:18px!important;align-items:center;border-top:1px solid #e6edf4;border-left:0}}
@media(max-width:767px){.crf-login-footer{grid-template-columns:1fr;row-gap:0;padding:8px 20px}.crf-login-footer>*{padding:18px 0;border-top:1px solid #e6edf4;border-left:0}.crf-login-footer>*:first-child{border-top:0}.crf-footer-social-block{align-items:flex-start}.crf-login-legal{width:calc(100% - 24px);margin:-14px auto 20px;padding:16px;align-items:flex-start;flex-direction:column;gap:12px}.crf-login-legal p{text-align:left}}

/* Rodapé mais compacto e atendimento público por setor. */
.crf-login-footer{margin-top:12px;margin-bottom:26px;padding-top:15px;padding-bottom:15px}.crf-login-footer>*{padding-right:22px;padding-left:22px}.crf-footer-icon{width:46px;height:46px;flex-basis:46px}.crf-footer-item{gap:12px}.crf-footer-item div{gap:2px}.crf-footer-item strong{font-size:13px}.crf-footer-item span{font-size:12px}.crf-footer-button{min-height:27px;margin-top:3px;padding:0 9px;cursor:pointer;list-style:none}.crf-footer-button::-webkit-details-marker{display:none}.crf-public-whatsapp{position:relative;width:max-content}.crf-public-whatsapp-menu{position:absolute;z-index:20;bottom:35px;left:0;width:250px;overflow:hidden;padding:8px;border:1px solid #dce8e1;border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(23,52,75,.2)}.crf-public-whatsapp:not([open]) .crf-public-whatsapp-menu{display:none}.crf-public-whatsapp-menu>strong{display:block;padding:5px 8px 8px;color:#17324d;font-size:12px}.crf-public-whatsapp-menu a{display:flex;align-items:center;gap:10px;padding:8px;color:#17324d;border-radius:8px;text-decoration:none}.crf-public-whatsapp-menu a:hover{background:#f1faf5}.crf-public-whatsapp-menu img{width:32px;height:32px;border-radius:50%;object-fit:cover}.crf-public-whatsapp-menu a span,.crf-public-whatsapp-menu small{display:block}.crf-public-whatsapp-menu a span{font-size:12px;font-weight:800}.crf-public-whatsapp-menu small{margin-top:2px;color:#0a9650;font-size:10px}.crf-footer-socials{margin-top:10px}.crf-footer-socials a{width:32px;height:32px}.crf-footer-socials svg{width:15px;height:15px;fill:currentColor}.crf-footer-socials a:nth-child(2) svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:767px){.crf-login-footer{margin-top:12px;padding-top:4px;padding-bottom:4px}.crf-public-whatsapp-menu{position:fixed;right:12px;bottom:16px;left:12px;width:auto}.crf-footer-icon{width:44px;height:44px;flex-basis:44px}}

/* Refinamentos de interação, destaque e escala do rodapé público. */
.crf-footer-item:nth-child(2)>div{align-content:start}.crf-public-whatsapp{margin:5px auto 0}.crf-public-whatsapp .crf-footer-button{min-height:32px;padding:0 15px;justify-content:center;color:#fff;border-color:#07944c;background:linear-gradient(135deg,#10ad61,#078c49);box-shadow:0 5px 12px rgba(8,148,76,.2);font-size:12px!important;font-weight:800}.crf-public-whatsapp .crf-footer-button:hover{background:linear-gradient(135deg,#0c9e57,#067c41);box-shadow:0 7px 16px rgba(8,148,76,.28)}.crf-footer-socials{gap:12px}.crf-footer-socials a{width:38px;height:38px}.crf-footer-socials svg{width:20px;height:20px;overflow:visible}.crf-footer-socials a:last-child svg{width:22px;height:22px}.crf-login-legal{margin:0 auto 32px;min-height:70px;padding:14px 24px}.crf-login-security strong{font-size:13px}.crf-login-security small{font-size:11px}.crf-login-legal p{font-size:11px}
@media(max-width:767px){.crf-public-whatsapp{margin-left:0}.crf-footer-socials a{width:40px;height:40px}.crf-footer-socials svg{width:21px;height:21px}.crf-login-legal{margin:0 auto 20px;min-height:0}.crf-login-security strong{font-size:13px}.crf-login-security small,.crf-login-legal p{font-size:11px;line-height:1.45}}

/* Ícones PNG oficiais fornecidos para as redes sociais. */
.crf-footer-socials a{width:46px;height:46px;padding:0;overflow:visible;background:transparent;cursor:pointer}.crf-footer-socials a:hover{background:transparent;transform:translateY(-2px)}.crf-footer-socials img{display:block;width:46px;height:46px;object-fit:contain;pointer-events:none}.crf-footer-socials a:focus-visible{outline:3px solid rgba(10,85,158,.28);outline-offset:3px}
.crf-footer-socials a:nth-child(2) img{transform:scale(1.04)}.crf-footer-socials a:nth-child(3) img{transform:scale(1.095)}
@media(max-width:767px){.crf-footer-socials a,.crf-footer-socials img{width:48px;height:48px}}

/* Alinhamento dos títulos e logo no botão Fale Conosco. */
.crf-footer-social-block{justify-content:flex-start;align-items:center;text-align:center}.crf-footer-social-block>strong{display:block;width:100%;line-height:1.2}.crf-public-whatsapp .crf-footer-button{display:flex!important;gap:7px}.crf-public-whatsapp .crf-footer-button>img{display:block;width:19px;height:19px;border-radius:50%;object-fit:cover}
@media(max-width:767px){.crf-footer-social-block{align-items:flex-start;text-align:left}.crf-footer-social-block>strong{width:auto}.crf-public-whatsapp .crf-footer-button>img{width:20px;height:20px}}

/* Logo do WhatsApp ao lado, e não dentro, do botão Fale Conosco. */
.crf-footer-item--contact{justify-content:center}.crf-footer-item--contact>div{width:max-content}.crf-contact-action{display:flex!important;align-items:center;justify-content:center;gap:9px!important;margin-top:5px}.crf-contact-action .crf-footer-icon{width:34px;height:34px;flex-basis:34px}.crf-contact-action .crf-public-whatsapp{margin:0}.crf-public-whatsapp .crf-footer-button>img{display:none}
@media(max-width:767px){.crf-footer-item--contact{justify-content:flex-start}.crf-footer-item--contact>div{width:100%}.crf-contact-action{justify-content:flex-start}.crf-contact-action .crf-footer-icon{width:36px;height:36px;flex-basis:36px}}

/* Central de Atendimento integralmente centralizada e ação ampliada. */
.crf-footer-item--contact>div{justify-items:center;text-align:center}.crf-contact-action{width:100%;gap:11px!important}.crf-contact-action .crf-footer-icon{width:40px;height:40px;flex-basis:40px}.crf-public-whatsapp .crf-footer-button{min-height:38px;padding:0 18px;border-radius:7px;font-size:13px!important}
@media(max-width:767px){.crf-footer-item--contact{justify-content:center}.crf-footer-item--contact>div{justify-items:center;text-align:center}.crf-contact-action{justify-content:center}.crf-contact-action .crf-footer-icon{width:42px;height:42px;flex-basis:42px}.crf-public-whatsapp .crf-footer-button{min-height:40px;padding:0 19px;font-size:13px!important}}

/* Bloco institucional de endereço também centralizado. */
.crf-login-footer>.crf-footer-item:first-child{justify-content:center}.crf-login-footer>.crf-footer-item:first-child>div{justify-items:center;text-align:center}.crf-login-footer>.crf-footer-item:first-child .crf-footer-button{justify-content:center}
@media(max-width:767px){.crf-login-footer>.crf-footer-item:first-child{justify-content:center}.crf-login-footer>.crf-footer-item:first-child>div{justify-items:center;text-align:center}}
