/* --------------------------------------------------- */
/* --------------------- GENERAL --------------------- */
/* --------------------------------------------------- */

/* VAR */
:root {
    --orange: #f37535;
    --blue: #3d92ca;
    --grey: #606062;
    --light-grey: #bababa;
}

/* ---------------------------- */

/* RESET */

* {
    margin: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

/* ---------------------------- */

/* GENERAL */

.float{
	position:fixed;
	width:60px;
	height:60px;
	bottom:40px;
	right:40px;
	background-color:#25d366;
	color:#FFF;
	border-radius:50px;
	text-align:center;
  	font-size:30px;
	box-shadow: 2px 2px 3px #999;
  	z-index:100;
}

.my-float{
	margin-top:16px;
	transition: 300ms;
}

.my-float:hover {
	transform: scale(1.2);
}

.section-title-bar {
	height: 100px;
	background-color: var(--grey);
	color: #fff;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.section-title-bar h2 {
	font-weight: 400;
	letter-spacing: 2px;
	font-size: 32px;
}

@media (max-width: 767px) {
	.section-title-bar h2 {
		font-size: 24px;
	}

	.float{
		bottom: 20px;
		right: 20px;
	}
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.wpforms-container {
	margin: 0 !important;
}

.wpforms-container {
	max-width: 90% !important;
	width: 90% !important;
  }
  
  .wpforms-form {
	max-width: 90% !important;
  }
  
  .wpforms-field-container {
	margin: 0 !important;
	max-width: 90% !important;
	width: 90% !important;
  }

/* ---------------------------- */

/* HEADER */

header {
    background-color: #fff;
    height: 101px;
    width: 100%;
}

header nav {
    height: 65px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 0 12%;
}

#top-bar {
    background-color: var(--orange);
    height: 30px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: end;
    padding: 3px 12%;
    font-size: 14px;
}

.phones,
.emails {
    display: flex;
    flex-direction: row;
    gap: 25px;
}

.phone-item a,
.email-item a {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 6px;
    text-decoration: none;
    color: inherit;
    outline: none;
    transition: 300ms;
}

.phone-item a i,
.email-item a i {
    color: #fff;
    transition: 300ms;
}

.phone-item a p,
.email-item a p {
    height: 50px;
    line-height: 50px;
    text-align: center;
    transition: 300ms;
}

.phone-item:hover a,
.phone-item:hover i,
.phone-item:hover p,
.email-item:hover a,
.email-item:hover i,
.email-item:hover p{
    color: var(--grey);
}

.phone-number {
    color: #fff;
}

.vertical-divider {
    width: 1px;
    height: 80%;
    background-color: #fff;
    margin: 0 25px;
    opacity: .5;
}


#logo-container {
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
}

/* #logo-image {
    height: 60%;
    display: flex;
    align-items: center;
    justify-content: center;
} */

#menu-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 50px;
}

#menu-itens {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    text-align: center;
    align-items: center;
    list-style: none;
    color: #000;
    font-size: 18px;
    gap: 30px;
    height: 100%;
}

.menu-item:link,
.menu-item:visited {
    text-decoration: none;
    color: #000;
}

.close-menu {
    display: none;
}

.header-button:link,
.header-button:visited {
    text-decoration: none;
    color: #fff;
}

.header-button:hover {
    background-color: var(--grey);
    border-color: var(--grey);
}

.header-button {
    background-color: var(--orange);
    border: 2px solid var(--orange);
    cursor: pointer;
    height: fit-content;
    width: fit-content;
    padding: 7px 15px;
    border-radius: 5px;
    transition-duration: 500ms;
}

.social-media-container {
    display: flex;
    flex-direction: column;
    gap: 50px;
    justify-content: center;
}

.icons-container {
    display: flex;
    flex-direction: row;
    gap: 35px;
    justify-content: center;
    align-items: center;
}


.social-icon-contact {
    transition-duration: 300ms;
    font-size: 42px;
    color: var(--grey);
}

.social-icon-contact:hover {
    color: var(--orange);
}

.menu-item,
.social-icon-contact-menu {
    transition-duration: 300ms;
}

.menu-item:hover {
    color: var(--orange);
}

.social-icon-contact-menu:hover {
    color: var(--grey);
}

#menu-toggle,
.menu-icon {
    display: none;
    background-color: inherit;
}

#menu-toggle:checked ~ #menu-itens {
    transform: scale(1, 1);
}

.social-icon-contact-menu {
    font-size: 20px;
    color: #fff;
}

.icons-container-menu {
    display: flex;
    flex-direction: row;
    gap: 20px;
    justify-content: center;
}

/* RESPONSIVITY */

/* TABLETS */

@media (max-width: 1280px) {
    header nav {
        padding: 0 2%;
    }

    #top-bar {
        padding: 3px 4%;
    }

    .vertical-divider {
        margin: 0 15px;
    }
}

@media (max-width: 1024px) {
    .social-icon-contact {
        font-size: 28px;
    }

    #top-bar {
        font-size: 13px;
        padding: 3px 3%;
    }

    #menu-itens {
        gap: 10px;
        font-size: 15px;
    }

    #menu-container {
        gap: 15px;
    }

    .header-button {
        padding: 7px 5px;
    }

    .phone-item a p strong {
        display: none;
    }

    .icons-container-menu {
        gap: 8px;
    }

    .phones,
    .emails {
        gap: 15px;
    }
}

/* SMARTPHONES */

@media (max-width: 767px) {
    .menu-icon {
        display: block;
        position: relative; /* ou absolute se quiser posicionar no canto direito */
        color: var(--grey); /* ou #000 */
        font-size: 38px;
        cursor: pointer;
        z-index: 1001;
    }

    #logo-container {
        padding-left: 5px;
    }

    #menu-container {
        justify-content: space-between;
        /* width: 100%; */
        flex-direction: row-reverse;
        padding-right: 5px;
        gap: 5px;
    }

    .social-container {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 0 10px;
        /* width: 100%; */
    }

    .header-button {
        font-size: 16px;
        padding: 8px 15px;
    }
    
    #menu-itens {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: 30px;
        position: absolute;
        top: 65px;
        left: 0;
        width: 100%;
        z-index: 1;
        transform: scale(1, 0);
        transform-origin: top;
        transition: transform 0.3s ease-in-out;
        box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
        background-color: var(--light-grey);
        padding: 30px 0 0 0;
        height: auto;
    }

    .menu-box {
        padding-bottom: 30px;
        width: 100%;
        border-bottom: var(--grey) solid 1px;
    }

    .menu-icon {
        display: block;
        color: var(--grey);
        font-size: 38px;
        cursor: pointer;
    }

    .menu-item {
        width: 100%;
        padding: 15px 10px;
        text-align: center;
        font-size: 18px;
        color: #000;
    }

    .menu-item:link,
    .menu-item:visited {
        color: #000;
    }

    .menu-item:hover {
        color: var(--orange);
    }

    .close-menu {
        font-size: 36px;
        color: white;
        cursor: pointer;
        position: absolute;
        top: 10px;
        right: 15px;
        z-index: 101;
    }

    #top-bar {
        display: none;
    }

    header {
        height: 65px;
    }
}

/* ---------------------------- */

/* FOOTER */

footer {
    background-color: var(--grey);
    height: 75px;
    width: 100%;
}

.copyright {
    color: #fff;
}

.footer-container {
    padding: 0px 10%;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

#logo-container-footer {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#logo-image {
    /* height: 55%; */
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
    width: 250px;
}

/* RESPONSIVITY */

/* SMARTPHONES */

@media screen and (max-width: 767px) {
    .social-media-container {
        gap: 30px;
    }

    .social-media-container {
        gap: 30px;
    }

    .icons-container {
        gap: 15px;
    }

    .footer-container {
        flex-direction: column;
        justify-content: center;
        gap: 10px;
    }

    .copyright {
        text-align: center;
    }

    #logo-container-footer {
        height: 60%;
    }

    footer {
        height: 125px;
        padding: 10px 0;
    }

    #logo-image {
        max-width: 70%;
    }
}

html, body {
    overflow-x: hidden;
    width: 100%;
    max-width: 100vw;
}
