
#site-footer{background-color: var(--color-custom-02); } .custom-footer{display: flex; flex-direction: column; justify-content: space-between; gap: 1.25rem; color: var(--color-custom-01); font-family: var(--font-3); padding: 2rem 0; } .custom-footer hr{opacity: 1; height: 1px; background-color: rgba(255, 255, 255, .1); margin: 1rem 0; } .custom-footer .footer_col hr{height: 2px; background-color: var(--color-destaque); } .custom-footer ul{justify-content: start; list-style: none; padding: 0; margin: 0; } .custom-footer p{margin-bottom: 0; } .custom-footer .footer_icons{justify-content: center; } .custom-footer .footer-icons-item, .custom-footer .footer_icons{display: flex; gap: .625rem; } .custom-footer .footer_icons .phone-item, .custom-footer .footer_icons .email-item{a{width: 40px; height: 40px; } svg{width: 19px; height: auto; } } .custom-footer h2{font-size: var(--fs-5); text-transform: uppercase; font-weight: 600; color: var(--color-custom-01); margin-bottom: 1.75rem; display: block; } .custom-footer .menu a{color: var(--color-custom-03); display: block; padding: .3125rem 0; margin-bottom: 0; transition: all .4s; } .custom-footer .hr{width: 100%; display: block; } .custom-footer .footer_colunas{display: flex; align-items: stretch; justify-content: space-between; flex-wrap: wrap; gap: 1rem; margin: 1rem 0; } .custom-footer .phone-item, .custom-footer .email-item, .custom-footer .address-item{align-items: start; margin-bottom: 1rem; a{color: var(--color-custom-03); align-items: start; } } .custom-footer .footer_colunas span{line-height: 1.2; } .custom-footer .footer_colunas .footer_col{width: calc((100% - (40px * 3)) / 4); } .custom-footer #footer_copyright{text-align: center; } .custom-footer #footer_copyright .copyright-content{display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 2.25rem; } .custom-footer #footer_copyright p{margin-bottom: 0; color: var(--color-custom-03); } .custom-footer #footer_copyright hr{max-width: 100%; } .custom-footer #footer_copyright a{color: var(--color-custom-03); } .custom-footer .phone-item, .custom-footer .email-item, .custom-footer .address-item, .custom-footer #footer_copyright, .custom-footer .menu{a:hover{color: var(--color-destaque); } } @media screen and (max-width: 1199px){.custom-footer .footer_colunas{max-width: 700px; margin: 1rem auto; } .custom-footer .footer_colunas .footer_col{width: calc((100% - (40px * 1)) / 2); } } @media screen and (max-width: 767px){.custom-footer .footer_colunas{flex-direction: column; align-items: center; text-align: center; } .custom-footer h2{margin-bottom: .625rem; } .custom-footer .footer_colunas .footer_col{width: 100%; padding-top: 2rem; max-width: 390px; } .custom-footer .footer-logo-container{display: flex; } .custom-footer #footer_copyright .copyright-content, .custom-footer ul, .custom-footer .address-list, .custom-footer .footer-logo-container{justify-content: center; align-items: center; } .custom-footer #footer_copyright .copyright-content{flex-direction: column; } }
#site-header{height: var(--header-height); display: flex; align-items: center; position: sticky; position: fixed; width: 100%; top: 0; left: 0; z-index: 100; backdrop-filter: blur(10px); box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1); background-color: rgba(255, 255, 255, 0.9); } #site-header .container{display: flex; justify-content: space-between; align-items: center; gap: .625rem; } .logo{width: 100%; max-width: 160px; } .logo .custom-logo-link{font-size: 1.5rem; font-weight: bold; color: var(--color-text); display: block; padding: .625rem 0; } #site-header .social-icons a{color: var(--color-text); &:hover{color: var(--color-destaque); } } #site-header .header_icons .phones-list{gap: 30px; } #site-header .header_icons{display: flex; justify-content: space-between; gap: 30px; width: 100%; max-width: 190px; } #site-header .header_btn-cta{min-height: 40px; } .desktop-navigation{width: 100%; max-width: 530px; } .desktop-menu{display: flex; align-items: center; justify-content: space-between; gap: .3125rem; width: 100%; padding: 0 2.5rem; margin: 0 auto; } .desktop-menu li{flex-grow: 0; display: block; } .desktop-menu a{width: fit-content; color: var(--color-text); font-size: var(--fs-7); text-transform: uppercase; padding: 1rem 0; position: relative; display: flex; white-space: nowrap; transition: all .4s; } .desktop-menu .current-menu-item a, .desktop-menu a:hover{} .desktop-menu a::after{content: ''; position: absolute; bottom: .75rem; left: 50%; transform: translatex(-50%); width: 0; height: 2px; border-radius: 4px; background: var(--color-primary); transition: width 0.3s ease; } .desktop-menu .current-menu-item a::after, .desktop-menu a:hover::after{width: 100%; } .desktop-menu .menu-item-has-children{position: relative; } .desktop-menu .menu-item-has-children>a{padding-right: 20px; } .desktop-menu .menu-item-has-children>a::before{content: ''; position: absolute; right: 2px; top: 50%; width: 8px; height: 8px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: translateY(-75%) rotate(45deg); transition: transform 0.3s ease; } .desktop-menu .menu-item-has-children:hover>a::before{transform: translateY(-25%) rotate(225deg); } .desktop-menu .sub-menu .menu-item-has-children>a::before{right: 20px; } .desktop-menu .sub-menu{position: absolute; top: calc(100% + 10px); left: 0; min-width: 200px; background: #fff; border-radius: 5px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); padding: 8px 0; opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease; z-index: 200; } .desktop-menu .menu-item-has-children:hover>.sub-menu{opacity: 1; visibility: visible; transform: translateY(0); } .desktop-menu .sub-menu li{display: block; flex-grow: unset; } .desktop-menu .sub-menu a{display: block; padding: 10px 20px; font-size: var(--fs-7); color: var(--color-text); width: 100%; white-space: nowrap; transition: background 0.2s ease, color 0.2s ease; } .desktop-menu .sub-menu a::after{display: none; } .desktop-menu .sub-menu a:hover, .desktop-menu .sub-menu .current-menu-item>a{color: var(--color-primary); background: var(--color-custom-09); } .mobile-menu-toggle{display: none; flex-direction: column; gap: 6px; background: transparent; border: none; cursor: pointer; padding: 16px; z-index: 1001; } .hamburger-line{width: 36px; height: 5px; background: var(--color-primary); border-radius: 4px; transition: all 0.3s ease; } .mobile-menu-toggle.active .hamburger-line:nth-child(1){transform: translateY(8px) rotate(45deg); } .mobile-menu-toggle.active .hamburger-line:nth-child(2){opacity: 0; transform: scaleX(0); } .mobile-menu-toggle.active .hamburger-line:nth-child(3){transform: translateY(-8px) rotate(-45deg); } .mobile-menu-overlay{position: fixed; top: 0; left: 0; width: 100%; height: 100dvh; background: rgba(0, 0, 0, 0.8); z-index: 9999; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; } .mobile-menu-overlay.active{opacity: 1; visibility: visible; } .mobile-navigation{position: absolute; overflow-y: auto; background: var(--color-bg); padding: 70px 30px 30px; transition: transform 0.3s ease; display: flex; flex-direction: column; top: 0; left: 0; right: 0; width: 100%; max-width: 100%; height: auto; max-height: 100dvh; transform: translateY(-100%); } .mobile-menu-overlay.active .mobile-navigation{transform: translateX(0); } .mobile-menu-close{position: absolute; top: 16px; right: 16px; background: none; border: none; font-size: 2rem; line-height: 1; cursor: pointer; color: var(--color-text); transition: color 0.2s ease, transform 0.2s ease; padding: 4px 8px; } .mobile-menu-close:hover{color: var(--color-primary); transform: rotate(90deg); } .mobile-menu{display: flex; flex-direction: column; gap: 20px; } .mobile-menu li{border-bottom: 1px solid var(--color-custom-05); transition: all .4s; } .mobile-menu a{display: block; color: var(--color-text); font-weight: 500; font-size: 1.1rem; padding: 15px 0; transition: color 0.3s ease, padding-left 0.3s ease; } .mobile-menu li:hover, .mobile-menu .current-menu-item{border-color: var(--color-primary); } .mobile-menu .current-menu-item a, .mobile-menu a:hover{color: var(--color-primary); padding-left: 10px; font-weight: bold; } .mobile-menu .menu-item-has-children>a{display: flex; justify-content: space-between; align-items: center; } .mobile-menu .menu-item-has-children>a::after{content: ''; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform 0.3s ease; flex-shrink: 0; margin-left: 10px; margin-bottom: 3px; } .mobile-menu .menu-item-has-children.submenu-open>a::after{transform: rotate(225deg); margin-bottom: -3px; } .mobile-menu .sub-menu{display: none; flex-direction: column; gap: 0; padding: 0 0 10px 16px; border-left: 2px solid var(--color-primary); margin-left: 8px; } .mobile-menu .menu-item-has-children.submenu-open>.sub-menu{display: flex; } .mobile-menu .sub-menu li{border-bottom: none; } .mobile-menu .sub-menu a{font-size: 0.95rem; font-weight: 400; padding: 8px 0; color: var(--color-text); } .mobile-menu .sub-menu a:hover, .mobile-menu .sub-menu .current-menu-item>a{color: var(--color-primary); padding-left: 6px; } .mobile-menu-footer{margin-top: auto; padding-top: 24px; } .mobile-menu-footer ul.header-icons-item.phones-list{justify-content: start; } .mobile-menu-socials{display: flex; gap: 16px; flex-wrap: wrap; } .mobile-menu-socials a{color: var(--color-text); font-size: 1.4rem; padding: 0; transition: color 0.3s ease; } .mobile-menu-socials a:hover{color: var(--color-primary); padding-left: 0; font-weight: 400; } body.mobile-menu-open{overflow: hidden; } @media (max-width: 1536px){.logo{max-width: 160px; } #site-header .header_icons{max-width: 150px; gap: 20px; .phones-list{gap: 20px; } .email-item a, .phone-item a{width: 36px; height: 36px; svg{width: 20px; height: auto; } } } } @media (max-width: 1299px){.desktop-menu{padding: 0 .3125rem; } } @media (max-width: 991px){.header_btn{margin-left: auto; } #site-header .header_icons, .desktop-navigation{display: none; } .mobile-menu-toggle{display: flex; } } @media (max-width: 575px){.header_btn{display: none; } }