/* Rodapé institucional do Portal do Grande ABC */
#footer {position:relative;clear:both;margin-top:80px;padding-top:0;overflow:hidden;background:linear-gradient(145deg,#111b25 0%,#172533 52%,#0d1822 100%);color:#aebac4}
#footer:before {content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 10%,rgba(8,117,193,.18),transparent 34%),radial-gradient(circle at 88% 6%,rgba(240,140,0,.09),transparent 27%);opacity:.9}
#footer:after {content:"";position:absolute;right:-90px;top:42px;width:360px;height:360px;border:1px solid rgba(255,255,255,.035);border-radius:50%;box-shadow:0 0 0 38px rgba(255,255,255,.018),0 0 0 76px rgba(255,255,255,.012);pointer-events:none}
#footer .container {position:relative;z-index:1;box-sizing:border-box;width:calc(100% - 40px);max-width:1320px}
.portal-footer-accent {height:5px;background:linear-gradient(90deg,#0875c1 0 68%,#f08c00 68% 100%)}
#footer .footer-widgets {display:grid;grid-template-columns:1.05fr 1fr 1.1fr;gap:56px;margin:0;padding:58px 0 42px}
#footer .footer-widgets:before,
#footer .footer-widgets:after {display:none}
#footer .footer-widgets > [class*="col-"] {float:none;width:auto;padding:0}
#footer .footer-widget {float:none;width:100%;margin:0}
#footer .footer-widget > .col-sm-12,
#footer .footer-widgets .col-sm-12 {float:none;width:100%;padding:0}
#footer .footer-widget .row,
#footer .footer-widgets .row {margin-left:0;margin-right:0}
.portal-footer-brand {display:inline-flex;align-items:center;min-height:66px;margin:0 0 25px;padding:9px 14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.96);box-shadow:0 10px 30px rgba(0,0,0,.16)}
.portal-footer-brand img {display:block;width:auto;max-width:235px;height:auto;max-height:58px}
#footer .footer-widget .title {margin:0;color:#f5f8fa;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
#footer .footer-widget .title-line {width:44px;height:3px;margin:10px 0 20px;border-radius:3px;background:linear-gradient(90deg,#1595e5,#f08c00)}
#footer .f-widget-about p {max-width:410px;margin-bottom:20px;color:#aebac4;font-size:14px;line-height:1.75}
.portal-footer-values {display:flex;flex-wrap:wrap;gap:7px}
.portal-footer-values span {display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid rgba(255,255,255,.09);border-radius:999px;color:#c4d0d8;background:rgba(255,255,255,.04);font-size:11px}
#footer .f-random-list {display:grid;gap:12px}
#footer .f-random-list li {display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;float:none;min-height:76px;margin:0;padding:8px;border:1px solid transparent;border-radius:9px;transition:background-color .2s ease,border-color .2s ease,transform .2s ease}
#footer .f-random-list li:hover {border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.055);transform:translateX(3px)}
#footer .f-random-list li .left,
#footer .f-random-list li .left .external-image-container,
#footer .f-random-list li .left .external-post-image {display:block;width:100px;height:68px;border-radius:6px;overflow:hidden}
#footer .f-random-list li .left img {width:100%;height:100%;object-fit:cover}
#footer .f-random-list li .right {display:flex;align-items:center;padding:0}
#footer .f-random-list li .title {margin:0;font-size:13px;line-height:1.4}
#footer .f-random-list li .title a {color:#edf2f5}
#footer .f-random-list li .title a:hover {color:#7bc8f7}
#footer .f-widget-follow ul {display:flex;flex-wrap:wrap;gap:8px}
#footer .f-widget-follow ul li {margin:0}
#footer .f-widget-follow ul li a {display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.08);border-radius:9px;color:#d4dde3;background:rgba(255,255,255,.065);transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease}
#footer .f-widget-follow ul li a:hover {border-color:transparent;transform:translateY(-3px)}
#footer .widget-newsletter {margin:24px 0 0;padding:22px;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.055);box-shadow:0 12px 30px rgba(0,0,0,.1)}
.portal-newsletter-title {display:block;margin-bottom:7px;color:#f5f8fa;font-size:16px;line-height:1.35}
#footer .widget-newsletter p {margin:0 0 15px;color:#aebac4;font-size:13px;line-height:1.55}
#footer .newsletter {min-height:46px;margin:0;border:1px solid rgba(255,255,255,.11);border-radius:8px;background:#0c151e;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
#footer .newsletter input {height:46px;padding:10px 14px;border:0!important;border-radius:8px 0 0 8px;background:transparent;color:#e8eef2;font-size:14px}
#footer .newsletter input::placeholder {color:#778794}
#footer .newsletter .newsletter-button {height:46px;padding:8px 18px;border-radius:0 7px 7px 0;background:linear-gradient(135deg,#0875c1,#0a91df);font-size:13px;font-weight:750}
#footer .newsletter .newsletter-button:hover {opacity:1;background:linear-gradient(135deg,#0a86da,#f08c00)}
#footer .footer-bottom {display:flex;align-items:center;min-height:78px;padding:20px 0;border-top:1px solid rgba(255,255,255,.09);line-height:1.5}
#footer .footer-bottom > .row {width:100%;margin:0}
#footer .footer-bottom > .row > .col-md-12 {display:flex;align-items:center;justify-content:space-between;gap:24px;float:none;width:100%;padding:0}
#footer .footer-bottom-left,
#footer .footer-bottom-right {float:none}
#footer .footer-bottom p {color:#85949f;font-size:12px;line-height:1.5}
#footer .nav-footer {display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 20px}
#footer .nav-footer li {margin:0}
#footer .nav-footer li a {color:#aebac4;font-size:12px;line-height:1.5}
#footer .nav-footer li a:hover {color:#fff}
.scrollup i {border:1px solid rgba(255,255,255,.1);border-radius:9px;background:linear-gradient(135deg,#0875c1,#075589);box-shadow:0 8px 24px rgba(0,0,0,.22)}

@media (max-width:991px) {
    #footer .footer-widgets {grid-template-columns:1fr 1fr;gap:38px 34px;padding:48px 0 34px}
    #footer .footer-widgets > [class*="col-"]:last-child {grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:30px}
    #footer .footer-widgets > [class*="col-"]:last-child > .col-sm-12 {width:auto}
    #footer .widget-newsletter {margin-top:0}
}

@media (max-width:767px) {
    #footer {margin-top:52px}
    #footer .container {width:100%;padding-left:20px;padding-right:20px}
    #footer .footer-widgets {display:block;padding:40px 0 25px}
    #footer .footer-widgets > [class*="col-"] {display:block!important;margin-bottom:36px}
    #footer .footer-widgets > [class*="col-"]:last-child {margin-bottom:10px}
    .portal-footer-brand {min-height:58px;margin-bottom:22px;padding:8px 12px}
    .portal-footer-brand img {max-width:210px;max-height:50px}
    #footer .f-widget-about p {max-width:none}
    #footer .f-random-list li {grid-template-columns:92px minmax(0,1fr);padding:7px 0}
    #footer .f-random-list li .left,
    #footer .f-random-list li .left .external-image-container,
    #footer .f-random-list li .left .external-post-image {width:92px;height:66px}
    #footer .widget-newsletter {margin-top:24px;padding:18px}
    #footer .footer-bottom {padding:23px 0}
    #footer .footer-bottom > .row > .col-md-12 {display:block;text-align:center}
    #footer .footer-bottom-left,
    #footer .footer-bottom-right {width:100%}
    #footer .nav-footer {justify-content:center;margin-top:13px}
}

@media (max-width:420px) {
    #footer .newsletter {display:grid;grid-template-columns:minmax(0,1fr) auto}
    #footer .newsletter .newsletter-button {padding-left:13px;padding-right:13px}
    .portal-footer-values span {font-size:10px}
}
