/*
Theme Name:         Saniduo
Description:        Saniduo Theme
Version:            1.0
Author:             wevolved

Text Domain:        saniduo
*/

/* Configurações BASE */
* {
	box-sizing: border-box;
}
html {
	margin-top: 0px !important;
}
html #wpadminbar {
	opacity: 0.2 !important;
}
html,
body {
	margin: 0px;
	padding: 0px;
	overflow-x: hidden;
	user-select: none; /* Standard syntax */
}
/* desativar scroll quando */
html.disableScroll {
	overflow-y: hidden;
}

img {
	max-width: 100%;
}

/********* Alterar o scroll bar **********/
html {
	scrollbar-width: thin; /* Adjust the width of the scrollbar */
	scrollbar-color: #888 transparent; /* Adjust the color of the scrollbar */
}

/* Define the style for the scrollbar track */
html::-webkit-scrollbar {
	width: 4px; /* Adjust the width of the scrollbar */
}

/* Define the style for the scrollbar thumb */
html::-webkit-scrollbar-thumb {
	background-color: #888; /* Adjust the color of the scrollbar thumb */
	border-radius: 4px; /* Adjust the border radius of the scrollbar thumb */
}
/********* FIM DE Alterar o scroll bar **********/

/* Remover incremento de número - Chrome, Safari, Edge, Opera  */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Remover incremento de número - Firefox  */
input[type="number"] {
	-moz-appearance: textfield;
}

select {
	-webkit-appearance: none;
}

/******** TESTE ********* */
select {
	-webkit-appearance: none; /*REMOVES DEFAULT CHROME & SAFARI STYLE*/
	-moz-appearance: none; /*REMOVES DEFAULT FIREFOX STYLE*/
	cursor: pointer;

	background: var(--white) url(/wp-content/uploads/2024/03/Group-6.png)
		no-repeat right center;
	background-size: 40px 37px; /*TO ACCOUNT FOR @2X IMAGE FOR RETINA */
	/* white-space: normal;
	text-overflow: ellipsis; */
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

select option {
	background-color: #fff;
	color: black;
}
select::-ms-expand {
	display: none;
}

/* Change the white to any color */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus,
select:-webkit-autofill:active {
	-webkit-box-shadow: 0 0 0 30px var(--black) inset !important;
	-webkit-text-fill-color: var(--white) !important;
}

/* Change the white to any color */
.white input:-webkit-autofill,
.white input:-webkit-autofill:hover,
.white input:-webkit-autofill:focus,
.white input:-webkit-autofill:active,
.white select:-webkit-autofill,
.white select:-webkit-autofill:hover,
.white select:-webkit-autofill:focus,
.white select:-webkit-autofill:active {
	-webkit-box-shadow: 0 0 0 30px var(--white) inset !important;
	-webkit-text-fill-color: var(--black) !important;
}
/* Reset comportamento de links */
a,
a:hover,
a:focus,
a:active {
	text-decoration: none;
	color: var(--black);
	cursor: pointer;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
label,
input {
	margin: 0px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/**************** FONTS ****************/
/* Fonts */
@font-face {
	font-family: "FontAwesome";
	src: url("fonts/FontAwesome.otf");
	font-weight: normal;
	font-style: normal;
}

/* PP Migra */
@font-face {
	font-family: "PPMigra";
	src: url("fonts/pp-regular/PPMigra-Regular.woff2") format("woff2"),
		url("fonts/pp-regular/PPMigra-Regular.ttf") format("ttf"),
		url("fonts/pp-regular/PPMigra-Regular.otf") format("otf");
	font-weight: 400;
}

/* Gill sans */
@font-face {
	font-family: "Gill Sans";
	src: url("fonts/gill-sans/Gill Sans Light.woff2") format("woff2"),
		url("fonts/gill-sans/Gill Sans Light.ttf") format("ttf"),
		url("fonts/gill-sans/Gill Sans Light.otf") format("otf");
	font-weight: 300;
}
@font-face {
	font-family: "Gill Sans";
	src: url("fonts/gill-sans/Gill Sans.woff2") format("woff2"),
		url("fonts/gill-sans/Gill Sans.ttf") format("ttf"),
		url("fonts/gill-sans/Gill Sans.otf") format("otf");
	font-weight: 400;
}
@font-face {
	font-family: "Gill Sans";
	src: url("fonts/gill-sans/Gill Sans Bold.woff2") format("woff2"),
		url("fonts/gill-sans/Gill Sans Bold.ttf") format("ttf"),
		url("fonts/gill-sans/Gill Sans Bold.otf") format("otf");
	font-weight: 700;
}

@font-face {
	font-family: "Gill Sans Italic";
	src: url("fonts/gill-sans/Gill Sans Bold Italic.woff2") format("woff2"),
		url("fonts/gill-sans/Gill Sans Bold Italic.ttf") format("ttf"),
		url("fonts/gill-sans/Gill Sans Bold Italic.otf") format("otf");
	font-weight: 600;
}

/* Headers */
.home h1 {
	font-family: "Gill Sans";
	font-style: normal;
	font-weight: 400;
	font-size: 290px;
	line-height: 333px;
	text-align: center;
	color: var(--black);
}
/* HEaders principais */
h1 {
	font-family: "PPMigra";
	font-weight: 400;
	font-size: 7vw;
	line-height: 7vw;
	text-transform: uppercase;
	color: var(--black);
}

/* Fale connosco */
h2 {
	font-family: "PPMigra";
	font-style: normal;
	font-weight: 400;
	font-size: 35px;
	line-height: 27px;
	text-align: center;
	text-transform: uppercase;
	color: var(--black);
}
/* Os nossos serviços / nomes de serviços  */
h3 {
	/* titulos mobile */
	font-family: "Gill Sans";
	font-style: normal;
	font-weight: 400;
	font-size: 31px;
	line-height: 46px;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--black);
}

h4,
h5,
h6 {
	/* font-family: "XXX";
	font-weight: 300; */
	font-size: 0px;
}

/* Fonts default */
p,
a,
span {
	font-family: "PPMigra";
	font-weight: 400;
	font-size: 21px;
	line-height: 27px;
	color: var(--black);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
label,
input,
select,
textarea,
option {
	font-family: "Gill Sans";
	font-weight: 300;
	font-size: 18px;
	line-height: 24px;
	resize: none;
	color: var(--black);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Variáveis p/ reutilizar */
:root {
	/* Cores */
	--black: #221f20;
	--white: #f7f8ee;
	--header-height: 110px;
	--header-side-margin: 130px;
	--page-side-margin: 140px;
	--border-radius: 1px;
}

/* Remover paddings */
.noPadding {
	padding-left: 0px;
	padding-right: 0px;
}

body {
	/* margin:0px */
	overflow-x: hidden;
	background-color: var(--white);
}

.wpb_button,
.wpb_content_element {
	margin-bottom: 0px !important;
}

.left-padding {
	padding-left: var(--page-side-margin);
}
/******************************************** COOKIES  ********************************************/
/* Opção escondida */
.display-none {
	display: none;
}
/* Estrutura do Prompt de Cookies */
.cookiesPrompt {
	position: fixed;
	transform: translate(-100%, -100%);
	top: 97%;
	left: calc(100% - var(--header-side-margin));
	width: 350px;
	height: fit-content;
	background-color: var(--black);
	font-family: "Gill Sans";
	border-radius: var(--border-radius);
	z-index: 9999;
	color: var(--white);
	border: 1px solid var(--white);
}
/* Texto infomração Cookies */
.information {
	padding: 30px;
}

/* Mensagem dos Cookies */
.message,
p.message a {
	font-size: 16px;
	color: var(--white);
	font-family: "Gill Sans";
}

p.message a {
	text-decoration: underline;
}
/* Botões Cookies */
.cookiesButtons {
	padding-top: 20px;
	display: flex;
	gap: 20px;
}

/* Botão Aceitar/Rejeitar Cookie */
.acceptCookie,
.rejectCookie {
	font-weight: 300;
	font-size: 20px;
	line-height: 20px;
	display: block;
	transition: all 0.2s ease-in-out;
	margin-bottom: 3px;
	border: 1px solid var(--white);
	background-color: transparent;
	padding: 5px 15px !important;
	color: var(--white);
	border-radius: var(--border-radius);
	font-family: "Gill Sans";
}

/* overlay do popup */
.blackOverlay {
	position: fixed;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	background-color: rgb(247 248 238 / 48%);
	z-index: 9997;
	display: none;
}

/******************************************** HEADER  ********************************************/
/* caracteristicas do header */
header.site-header {
	height: var(--header-height);
	background-color: rgba(247, 248, 238, 0.8);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	position: fixed;
	width: 100vw;
	z-index: 9996;
	display: flex;
	border-radius: 0px 0px 10px 10px;
}
/* Wrapper com o seu conteudo */
header .headerWrapper,
.footerFullGrid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	align-items: center;
	width: 100%;
	padding: 0px var(--header-side-margin);
	justify-items: center;
}
.hero-mobile-image {
	display: none;
}
/* Row com Flex */
.footerFullFlex {
	display: flex;
	justify-content: space-between;
	padding: 0px var(--header-side-margin);
	justify-items: center;
}
.left {
	justify-self: left;
}
.right {
	justify-self: right;
}

/* remover bullets de listagem */
footer ul,
.site-header ul,
.headerMobileMenu ul {
	list-style: none;
	padding: 0px;
	margin: 0px;
}
/* Remover deafult de lista do menu */
.site-header .menuSide ul {
	display: flex;
	gap: 24px;
}

.site-header .current-menu-item a {
	text-decoration: underline;
}

.site-header ul li {
	float: left;
}
/* logo do header */
.logoWrapper img {
	width: 70px;
	height: auto;
}
/* dar um lligeiro padding aos elementos de menu */
.main-navigation {
	margin-top: 40px;
}
/* Logo no menu mobile */
.headerMobile {
	display: none;
}
/******** ELEMENTOS DO MENU HAMBURGUER **********/
/* Menu Hamburguer */
.headerMobileBurguer {
	position: fixed;
	background-color: var(--white);
	top: 80%;
	top: unset;
	bottom: 5vh;
	right: var(--header-side-margin);
	left: unset;
	padding: 20px;
	border: 1px solid var(--black);
	border-radius: 100%;
	z-index: 9999;
	display: none;
}

/* Div Pai dos elementos do Menu burguer */
.burguerElements {
	width: 40px;
	height: 40px;
	position: relative;
}

/* Linas do hamburguer */
.topLine,
.middleLine,
.bottomLine {
	position: absolute;
	height: 1px;
	background: var(--black);
	transition: all 0.3s;
	cursor: pointer;
	width: 100%;
}

/* Linha superior */
.topLine {
	top: 33%;
}
/* Linha baixo */
.bottomLine {
	top: 66%;
}

/* Alteração da Top Line */
.topLineOpen {
	transform: rotate(40deg);
	top: 50%;
}

/* Alteração da Top Line */
.bottomLineOpen {
	transform: rotate(-40deg);
	top: 50%;
}
/******** FIM ELEMENTOS DO MENU HAMBURGUER **********/

/******** MENU HEADER EM MOBILE **********/
/* Menu Header em lista vertical */
.headerMobileMenu {
	position: fixed;
	z-index: 9998;
	height: 100dvh;
	width: 100%;
	background-color: var(--white);
	display: none;
}
.headerMobileMenu .logo {
	width: 100%;
	text-align: center;
	margin-top: 30px;
	margin-bottom: 50px;
}
/* Menu de header quando aberto */
.headerMobileMenu {
	padding: 0px var(--header-side-margin);
	margin: 0px;
}
/* espaçamento opções de menu*/
.headerMobileMenu ul li {
	margin-bottom: 30px;
}
/* dimensão das opções de menu */
.headerMobileMenu a {
	font-size: 60px;
	line-height: 1.3;
}
/******** FIM MENU HEADER EM MOBILE **********/

/******************************************** POLITICA PRIVACIDADE  ********************************************/
/* Padding e margem da intro section */
.page-intro {
	margin-top: 0px;
	padding: 0px var(--page-side-margin);
	padding-top: 350px;
	margin-bottom: 18px;
}

.page-intro.intro-reused {
	padding-top: 124px;
}

.page-intro.noSidePadding {
	padding-top: 350px;
	padding-left: 0px;
	padding-right: 0px;
}
.page-intro.noRightPadding {
	padding-right: 0px;
}
/* dimensão do H1 para ocupar apenas 50% do ecrã */
.page-intro h1 {
	width: 50%;
	position: relative;
	z-index: 2;
}
.page-intro p {
	width: 40%;
	position: relative;
	z-index: 2;
}
/* dimensao deste div */
.politica-privacidade-wrapper {
	width: 66%;
}
/* Hs com text align esquerda */
.politica-privacidade-wrapper h2 {
	text-align: left;
}
/* paragrafos da politica com diferentes tamanhos */
.politica-privacidade-wrapper
	.wpb_text_column.wpb_content_element:nth-child(odd) {
	width: 59%;
}
/* margem entre paragrafos */
.politica-privacidade-wrapper .wpb_text_column.wpb_content_element {
	margin-bottom: 24px !important;
}
/******************************************** FOOTER  ********************************************/
/* Border footer */
.site-footer {
	border-top: 1px solid var(--black);
	padding-top: 45px;
	margin-top: 40px;
}
/* colocar elementos do footer colados a cima */
footer .footerMenusWrapper {
	align-items: flex-start;
}
/* Espaçamento entre elementos do menu footer*/
.footer-navigation.left-navigation
	ul
	li:not(.footer-navigation.left-navigation ul li:last-child) {
	margin-bottom: 12px;
}
/* Espaçamento entre elementos */
.footer-navigation.left-navigation a {
	text-transform: uppercase;
}
/* Sede com alinhado à direita */
.footer-navigation.right-navigation li {
	text-align: right;
}

/* Seção do meio com o telemovel */
.footerPhoneWrappper {
	margin-top: 30px;
}
/* Dimensão dos textos */
.footerPhoneWrappper p {
	text-transform: uppercase;
}
.footerPhoneWrappper p,
.footerPhoneWrappper a {
	font-size: 100px;
	line-height: 100px;
}

/* última secção com o email */
.footerEmailWrappper {
	justify-content: center;
	margin-top: 60px;
	margin-bottom: 46px;
}
/* última secção com o email */
.footerEmailWrappper a {
	font-size: 12vw;
	line-height: 1.2;
}
/* retirar eventos de clique num titulo do menu */
.sem-link {
	pointer-events: none;
}

.logo.mobile {
	display: none;
}
.logo.desktop {
	display: block;
}
/******************************************** CATÁLOGO  ********************************************/
/* padding bottom a este elemento único do catáloco */
.big-bottom {
	padding-bottom: 300px;
}
/* Cor do texto neste caso em epsecífico */
.big-bottom h1,
.big-bottom p {
	color: var(--white);
}
/* pequena margem lateral da grid com imagens */
.catalogo-grid {
	margin: 0px 16px;
}

/* Botão Ver Mais */
.vc_btn3.vc_btn3-color-default.vc_btn3-style-modern,
.wpcf7-submit,
.botaoDefault {
	color: var(--white) !important;
	border: 1px solid var(--black) !important;
	background-color: var(--black) !important;
	text-transform: uppercase !important;
	font-family: "Gill Sans";
	border-radius: var(--border-radius) !important;
	padding: 20px 75px 15px 75px !important;
	font-size: 15px;
	font-weight: 300;
	background-image: unset;
	cursor: pointer;
}

.botaoDefault.branco,
.wpcf7-submit {
	color: var(--black) !important;
	border: 1px solid var(--black) !important;
	background-color: var(--white) !important;
}

.white .wpcf7-submit {
	color: var(--white) !important;
	border: 1px solid var(--white) !important;
	background-color: var(--black) !important;
}
/* Botão submit do form */
.wpcf7-submit {
	width: 100%;
	margin-top: 0px;
}
/* remover defaults do lightbox */
.lightbox .lb-image {
	border: 0px solid #fff !important;
}
.lb-dataContainer {
	display: none !important;
}
/******************************************** SERVICOS  ********************************************/
/* Titulo nossos servicos centrado */
.tituloServico {
	margin-bottom: 28px;
}
.tituloServico,
.descricaoServico,
.nomeServico {
	text-align: center;
}

/* combater neste caso o width dos p */
.listagem-servicos p {
	width: 100%;
}
p.descricaoServico {
	padding: 0px 30px;
}
/* margem bottom da listaem de servicos */
.listagem-servicos {
	margin-bottom: 23px !important;
}

/* imagem dos servicos a 100% */
.container-img img {
	width: 100%;
	object-fit: cover;
	/* border: 1px solid var(--black); */
}

/* Nome do servico centrado */
.nomeServico {
	margin-top: 30px;
}

/* paddings de cada coluna */
.colServico {
	margin-bottom: 38px;
	padding: 0px !important;
}
.colServico:nth-child(odd) {
	padding-right: 4px !important;
}
.colServico:nth-child(even) {
	padding-left: 4px !important;
}

/* Secção com os botões de pedido de marcações */
.servico-button-section {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}
.servico-button-section .botaoDefault {
	padding: 20px 130px 15px 130px !important;
	font-size: 21px;
}

/*********************************
/*********************************
/*********************************
/******************************************************************
/****************************************************************** FORMULÁRIOS POPUP
****************************************************************** 
/*********************************
/*********************************/
.popUp_formulario {
	position: fixed;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	z-index: 9999;
	display: none;
}

/* pop up orgão social */
.popUp_formulario.closed {
	display: none;
}
/* Wrapper com formulario mesmo */
.popup_wrapper {
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: fit-content;
	padding: 100px;
	background-color: var(--black);
}
.popup_wrapper.white {
	background-color: var(--white);
}
/* dimensão do formulario*/
.popup_wrapper form {
	width: 400px;
}
/* Titulo do popup default (preto) */
.popup_wrapper h2 {
	color: var(--white);
	margin-bottom: 24px;
	font-weight: 300;
}
/* Titulo do popup default (preto) */
.popup_wrapper.white h2 {
	color: var(--black);
}
/* Para combater regras do Contact Form 7 */
.popup_wrapper span,
.popup_wrapper label,
p:has(span[data-name="confirm-politica"]),
.contactos-formulario-wrapper span,
.home-contactFormWrapper span {
	color: var(--white);
	font-family: "Gill Sans";
	font-size: 12px;
	font-weight: 400;
	line-height: 14px;
	margin: 0px;
	height: fit-content;
}
.white span,
.white label,
.white p:has(span[data-name="confirm-politica"]) {
	color: var(--black);
}
.wpcf7-list-item label {
	display: flex;
	align-items: center;
	gap: 10px;
}
.wpcf7-list-item input[type="checkbox"] {
	margin: 0px !important;
	height: 14px;
	width: 14px;
	appearance: none;
	-webkit-appearance: none;
	display: flex;
	align-content: center;
	justify-content: center;
	border: 1px solid var(--white);
	border-radius: 0;
}
.white .wpcf7-list-item input[type="checkbox"] {
	border: 1px solid var(--black);
}
input[type="checkbox"]::before {
	content: "";
	height: 14px;
	width: 14px;
	clip-path: polygon(
		17% 54%,
		28% 43%,
		38% 54%,
		70% 22%,
		81% 33%,
		38% 75%,
		17% 54%
	);
	transform: scale(0);
	background-color: var(--white);
}
.white input[type="checkbox"]::before {
	background-color: var(--black);
}
/* quando checkbox é clicada mostra icone */
input[type="checkbox"]:checked::before {
	transform: scale(1);
}
p .wpcf7-form-control-wrap {
	display: inline-block;
	height: fit-content;
	width: 100%;
}
/* Margem dos Elementos de Input */
.wpcf7-form-control-wrap {
	margin-top: 24px !important;
}
.calendario_wrapper {
	margin-top: 36px !important;
}

.wpcf7-form-control-wrap[data-name="confirm-politica"] {
	margin-top: 4px !important;
}
/* margin bottom do element antes do botao */
span[data-name="confirm-politica"] {
	margin-bottom: 24px !important;
}
/* padding mo aviso */
span.avisoMarcacao {
	padding-left: 30px;
}

.wpcf7-form-control {
	margin-top: 10px;
}
/* margem da infomração de aviso */
.wpcf7-not-valid-tip {
	margin-top: 3px !important;
	color: #ffa5a5 !important;
}

/* mensagem de sucesso */
.wpcf7 form.sent .wpcf7-response-output {
	border-color: transparent !important;
	color: var(--white);
	padding: 0px !important;
	margin: 0px !important;
	font-family: "Gill Sans";
}

/* mensagem de sucesso */
.white .wpcf7 form.sent .wpcf7-response-output {
	color: var(--black);
}
/* mensagem de erro */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: transparent !important;
	border: none;
	color: #ffa5a5;
	padding: 0px !important;
	margin: 0px !important;
}
/* Elementos de input */
.popupInput {
	position: relative;
	box-sizing: border-box;
	display: flex;
	width: 100%;
	height: auto;
	padding: 15px 10px 10px 15px;
	border: 1px solid var(--white);
	background-color: var(--black);
	border-radius: 4px;
	color: var(--white);
	font-size: 21px;
}
.white .popupInput {
	border: 1px solid var(--black);
	background-color: var(--white);
	color: var(--black);
}

input:focus,
select:focus {
	outline: none !important;
}
/* Elemento do X para fechar formulario */
.closeIcon {
	background-color: var(--black);
	border: 2px solid var(--white);
	border-radius: 100%;
	z-index: 9999;
	position: relative;
	width: fit-content;
	height: fit-content;
	position: absolute;
	top: 15px;
	right: 15px;
	cursor: pointer;
}

.formClose {
	z-index: 9999;
	position: relative;
	width: fit-content;
	height: fit-content;
	position: absolute;
	top: 15px;
	right: 15px;
	cursor: pointer;
}
.formClose img {
	filter: invert(1);
}
.white .formClose img {
	filter: unset;
}
/* Elemento do X para fechar formulario */
.popup_wrapper.white .closeIcon {
	background-color: var(--white);
	border: 2px solid var(--black);
}
/*spans que fazem a forma X*/
.closeIcon .burguerElements span {
	background: var(--white);
}
/*spans que fazem a forma X*/
.popup_wrapper.white .closeIcon .burguerElements span {
	background: var(--black);
}
.closeIcon .burguerElements {
	width: 60px;
	height: 60px;
	display: flex;
	justify-content: center;
}
.closeIcon .topLine,
.closeIcon .bottomLine {
	width: 50%;
	height: 2px;
}

.pedido_formulario .wpcf7-form-control-wrap[data-name="confirm-politica"] {
	margin-top: 24px !important;
}
.pedido_formulario input::placeholder {
	color: var(--white);
	opacity: 1;
}
.white input::placeholder {
	color: var(--black);
}
/* FORMULARIO DE PEDIDO DE ASSISTENCIA */
/* Estrutura de tabela para ter Calendario + formulario */
.form_calendario_wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

/* ESTILIZAÇÃO DO CALENDÀRIO */
/* Outside do calendario */
.calendario_wrapper {
	height: fit-content !important;
	width: fit-content;
}
.wpsbc-container[data-columns] .wpsbc-calendars .wpsbc-calendar {
	margin: 0px !important;
	border: 0px solid #f1f1f1;
	background: var(--white);
	max-width: auto !important;
}

/* HEADER do calendario */
.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header {
	text-align: center;
	padding: 0px !important;
	padding-bottom: 38px !important;
	background: transparent !important;
}
/* Select com meses /anos */
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	.wpsbc-calendar-header
	.wpsbc-select-container
	select {
	border: 0px solid #bdc3c7 !important;
	width: 100% !important;
	height: fit-content !important;
	line-height: 24px !important;
	vertical-align: middle !important;
	font-size: 24px !important;
	text-align: center !important;
	background-color: var(--white) !important;
	background: var(--white) !important;
}
/* remover padding da zona com os dias */
.wpsbc-container .wpsbc-calendars .wpsbc-calendar-wrapper {
	padding: 0px !important;
}
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td,
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr th,
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	table
	tr
	td
	.wpsbc-date-inner
	.wpsbc-date-number {
	font-size: 18px;
	line-height: 21px;
}
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	table
	tr
	td
	.wpsbc-date.wpsbc-gap,
.wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-1 div:first-of-type {
	background-color: transparent !important;
	background: transparent !important;
}
/* adicionar a border preta ao header da tabela */
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table thead tr th {
	border-bottom: 1px solid rgb(34 31 32 / 50%) !important;
	border-left: 1px solid rgb(34 31 32 / 50%) !important; /* Add a border to table cells */
	border-right: 1px solid rgb(34 31 32 / 50%) !important; /* Add a border to table cells */
	border-top: 0px solid var(--black) !important; /* Add a border to table cells */
	padding: 10px 1px !important;
}
/* remover o border do primemro e ultimo elemento */
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	table
	thead
	tr
	th:nth-child(1) {
	border-left: 0px solid var(--black) !important; /* Add a border to table cells */
}
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table thead tr th:last-child {
	border-right: 0px solid var(--black) !important; /* Add a border to table cells */
}

/* Substituição das setas de navegação de meses */
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	.wpsbc-calendar-header
	.wpsbc-calendar-header-navigation
	.wpsbc-next,
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	.wpsbc-calendar-header
	.wpsbc-calendar-header-navigation
	.wpsbc-prev {
	background: var(--white);
	color: transparent;
}
/* remover aquele icon manhoso */
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	.wpsbc-calendar-header
	.wpsbc-calendar-header-navigation
	.wpsbc-arrow {
	display: none !important;
	border-color: transparent transparent transparent transparent !important;
}
/* Adicionar nova seta para mudar de mes */
.wpsbc-next::after,
.wpsbc-prev::after {
	content: "";
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70%;
	color: var(--black);
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid var(--black);
	border-radius: 100%;
}
/* Adicionar nova seta para mudar de mes */
.wpsbc-next::after {
	background-image: url(https://saniduo-pt.wevolved.pt/wp-content/uploads/2024/03/arrow_right.png);
}
.wpsbc-prev::after {
	background-image: url(https://saniduo-pt.wevolved.pt/wp-content/uploads/2024/03/arrow_left.png);
}
/********************** CORPO do calendário *******************/
.wpsbc-date:has(.wpsbc-date-number) {
	cursor: pointer;
}
.wpsbc-date.dataClicada:has(.wpsbc-date-number) {
	background-color: var(--black);
}
/* Mudar a cor das datas */
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	table
	tr
	td
	.wpsbc-date-inner
	.wpsbc-date-number {
	color: var(--black) !important;
	height: 100% !important;
	position: absolute;
	top: 50%;
	height: fit-content !important;
	line-height: 15px;
}
/* Mudar o vidual quando uma data está selecionada */
.wpsbc-container
	.wpsbc-calendars
	.wpsbc-calendar
	table
	tr
	td
	.dataClicada
	.wpsbc-date-inner
	.wpsbc-date-number {
	color: var(--white) !important;
}

/* adicionar a border preta ao header da tabela */
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td {
	border-bottom: 1px solid rgb(34 31 32 / 50%) !important;
	border-left: 1px solid rgb(34 31 32 / 50%) !important; /* Add a border to table cells */
	border-right: 1px solid rgb(34 31 32 / 50%) !important; /* Add a border to table cells */
	border-top: 0px solid var(--black) !important; /* Add a border to table cells */
	padding: 0px !important;
}
/* remover o border do primemro e ultimo elemento */
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td:nth-child(1) {
	border-left: 0px solid var(--black) !important; /* Add a border to table cells */
}
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td:last-child {
	border-right: 0px solid var(--black) !important; /* Add a border to table cells */
}
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr:last-child td {
	border-bottom: 0px solid var(--black) !important; /* Add a border to table cells */
}
/********************************* FIM FORMULÁRIOA POPUP *********************************/

/******************************************** SOBRE NOS  ********************************************/
.intro-right-side .vc_column-inner {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 100vh;
}

.intro-italic-bold p {
	font-family: "Gill Sans Italic" !important;
	font-weight: 600;
	font-size: 23px;
	line-height: 29px;
	width: 100% !important;
	margin-top: 24px !important;
	padding-right: 10%;
}
/* Secção com iamanegs */
.sobre-mim-lista-imagens {
	margin-top: 74px;
}
/* Listagem com imagens */
.sobre-mim-lista-imagens.desktopList
	.vc_column-inner
	.wpb_wrapper:not(.wpb_wrapper.vc_figure) {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	justify-items: center;
	gap: 25px;
}

/* Esconder estrutura com slickslider se nao for mobile*/
.sobre-mim-lista-imagens {
	display: none;
}

/* dimensões dos slides */
.img-slide {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 600px;
}
/* pontos do slick slider com margem */
.slick-dots {
	bottom: -50px;
	width: 100%;
	padding: 0;
	margin: 0;
}

.slick-dots li {
	width: 20px;
	margin: 0 5px;
	height: 1px;
	/* margin: 0 5px; */
	transition: all 500ms;
}

.slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0px;
	background: transparent;
}
li.slick-active {
	width: 62px;
}
.slick-dots li button:before {
	width: 100%;
	height: 100%;
	content: "";
	opacity: 1;
	background-color: var(--black);
}
.slick-dots li.slick-active button:before {
	opacity: 1;
	background-color: var(--black);
}
/* padding top da secção O que fazemos */
.que-fazemos-section {
	padding-top: 87px;
}

/* Mini logo */
.que-fazemos-logo {
	margin-bottom: 24px !important;
}
.que-fazemos-logo img {
	width: 26px;
}
/* centrar elementos */
.que-fazemos-section .wpb_wrapper div,
.atualmente-section .wpb_wrapper div {
	margin: 0 auto;
}

/* centrar elementos */
.que-fazemos-center p {
	font-size: 29px;
	line-height: 37px;
	font-family: "Gill Sans";
	padding: 0px !important;
}
/* dimensãi do te */
.que-fazemos-center {
	width: 55%;
}
/* margem da imagem do o que fazemos */
.que-fazemos-img {
	margin-top: 128px !important;
}
/* tamanho da imagem do o que fazemos */
.que-fazemos-img img {
	width: 100vw;
}

/* ATUALMENTE */
.atualmente-section {
	margin-top: 73px;
	margin-bottom: 187px;
	border-top: 1px solid var(--black);
	padding-top: 73px;
}

.atualmente-section .que-fazemos-center {
	width: 70%;
}

.section-title .wpb_wrapper p:nth-child(1) {
	font-family: "PP Migra";
	font-weight: 400;
	font-size: 21px;
	line-height: 27px;
	text-align: center;
	text-transform: uppercase;
}

/******************************************** CONTACTOS  ********************************************/
/* Colocar o titulo a 100% porque a erstrutura de fora já garrante os 50% */
.page-intro.twoColContent h1 {
	width: 100%;
}
/* Tamanho do paragrafo abaixo do titulo */
.page-intro .intro-bottom-text p {
	width: 80%;
	margin-bottom: 48px !important;
}

.contactos-formulario-wrapper p {
	width: 100%;
}

/* estilização do select */
select.popupInput {
	text-transform: uppercase;
}
/* Calendario no Formulário dos contactos escondido */
.contactos-formulario-wrapper .wpsbc-container,
.contactos-formulario-wrapper .avisoMarcacao {
	display: none; /*none*/
}
.contactos-formulario-wrapper.showCal .wpsbc-container {
	display: inline-block;
	margin-top: 24px !important;
	margin-bottom: 24px !important;
}
.contactos-formulario-wrapper.showCal .avisoMarcacao {
	display: inline-block;
}
/******************************************** HOMEPAGE  ********************************************/
/*  Hero Section */
.home-heroSection {
	height: 100vh;
}
.home-heroSection .wpb_wrapper:has(h1) {
	height: fit-content;
	position: relative;
}
.home-heroSection .wpb_wrapper:has(.float-element) {
	width: fit-content;
}
.home-heroSection .vc_column-inner,
.home-heroSection .vc_col-sm-12 {
	height: 100% !important;
}
/* Display flex a div com os elementos */
.home-heroSection .vc_column-inner {
	display: flex;
	align-items: flex-end;
	justify-content: center;
}

/*  Hero Section */
.home-heroSection h1 {
	font-size: 370px;
	line-height: 0.9;
	width: fit-content;
	margin: 0 auto;
}

.home-heroSection-text {
	display: block;
}

/* elementos de texto */
.float-element {
	position: absolute;
	transform: translate(0%, -100%);
}

/* Linha ao lado de cada caixa*/
.float-element::before {
	content: "";
	display: block;
	position: absolute;
	left: -20px;
	width: 1px;
	height: 411px;
	background-color: var(--black);
}

/* elemento 1 com texto */
.float-first {
	top: -227px;
	left: 166px;
	width: 390px;
}
/* elemento 2 com texto */
.float-second {
	top: -84px;
	left: 669px;
	width: 240px;
}
/* Linha ao lado de cada caixa*/
.float-second::before {
	height: 354px;
}
/* elemento 2 com texto */
.float-third {
	top: -188px;
	left: unset;
	right: 103px;
	width: 390px;
}
/* Linha ao lado de cada caixa*/
.float-third::before {
	height: 422px;
}
/* Icone da font do hero section (apenas em mobile) */
.hero-font-image {
	display: none;
}

/* Secção com duas imagens pós hero section */
.home-twoImagesSection .vc_column-inner {
	height: 800px;
}
/* Paddingda direita */
.home-twoImagesSection .vc_col-sm-12:nth-child(1) {
	padding-right: 2px;
}
.home-twoImagesSection .vc_col-sm-12:nth-child(2) {
	padding-left: 2px;
}
.home .colServico:nth-child(n) {
	padding-right: 4px !important;
	padding-left: 4px !important;
}
/* Secçção com serviços da homeSection */
.home-servicosSection {
	margin-top: 54px;
	margin-bottom: 103px;
}
.home-servicosSection .listagem-servicos,
.home-servicosSection .colServico {
	margin-bottom: 0px !important;
}

/* Secção Contactos */
.home-contactSection {
	margin-bottom: 98px;
	height: auto;
}
/* Secção de contactos */
.home-contactFormWrapper .vc_column-inner {
	width: 644px !important;
	background-color: var(--white);
	padding: 100px !important;
	padding-bottom: 104px !important;
	margin: 0 auto;
	margin-top: 124px;
	margin-bottom: 189px;
}
.home-contactFormWrapper h2 {
	margin-bottom: 14px !important;
}
/****************************** MEDIA QUERIES ************************************/
@media only screen and (max-width: 1650px) {
	/******************************************** HOMEPAGE  ********************************************/
	/*  Hero Section */
	.home-heroSection h1 {
		font-size: 320px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: -227px;
		left: 147px;
		width: 390px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 411px;
	}
	/* elemento 2 com texto */
	.float-second {
		top: -118px;
		left: 582px;
		width: 240px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 354px;
	}
	/* elemento 2 com texto */
	.float-third {
		top: -188px;
		left: unset;
		right: 34px;
		width: 390px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 422px;
	}
	/******************************************** FOOTER  ********************************************/
	/* Dimensão dos textos */
	.footerPhoneWrappper p,
	.footerPhoneWrappper a {
		font-size: 80px;
		line-height: 1.2;
	}

	/* última secção com o email */
	.footerEmailWrappper a {
		font-size: 12.1vw;
		line-height: 1.2;
	}

	/*********************************
	/*********************************
	/*********************************
	/******************************************************************
	/****************************************************************** FORMULÁRIOS POPUP
	****************************************************************** 
	/*********************************
	/*********************************/
	/* Wrapper com formulario mesmo */
	.popup_wrapper {
		padding: 70px;
	}

	/* dimensão do formulario*/
	.popup_wrapper form {
		width: 500px;
	}

	.closeIcon .burguerElements {
		width: 50px;
		height: 50px;
	}
	.wpsbc-container[data-columns] .wpsbc-calendars .wpsbc-calendar {
		max-width: 450px !important;
	}
}
/* HD READY - Resolução Base Desenvolvimento */
@media only screen and (max-width: 1440px) {
	/* HEaders principais */
	h1 {
		font-size: 100px;
		line-height: 100px;
	}

	/* Fale connosco */
	h2 {
		font-size: 35px;
		line-height: 41px;
	}
	/* Os nossos serviços / nomes de serviços  */
	h3 {
		font-size: 25px;
		line-height: 40px;
	}

	h4,
	h5,
	h6 {
		/* font-family: "XXX";
	font-weight: 300; */
		font-size: 0px;
	}

	/* Fonts default */
	p,
	a,
	span {
		font-size: 16px;
		line-height: 22px;
	}
	label,
	input,
	select,
	textarea,
	option {
		font-size: 18px;
		line-height: 24px;
	}
	/* ----------------------------------- COOKIES PROMPT ----------------------------------- */
	/* Estrutura do Prompt de Cookies */
	.cookiesPrompt {
		top: 97%;
		height: fit-content;
	}
	/* Texto infomração Cookies */
	.information {
		padding: 20px;
	}

	/* Mensagem dos Cookies */
	.message,
	p.message a {
		font-size: 14px;
	}

	/* Botões Cookies */
	.cookiesButtons {
		padding-top: 10px;
	}

	/* Botão Aceitar/Rejeitar Cookie */
	.acceptCookie,
	.rejectCookie {
		font-size: 16px;
	}
	/******************************************** POLITICA PRIVACIDADE  ********************************************/
	/* Padding e margem da intro section */
	.page-intro {
		padding: 0px var(--page-side-margin);
		margin-bottom: 18px;
		margin-top: 0px;
		padding-top: 350px;
	}

	/* paragrafos da politica com diferentes tamanhos */
	.politica-privacidade-wrapper
		.wpb_text_column.wpb_content_element:nth-child(odd) {
		width: 64%;
	}
	/******************************************** HEADER  ********************************************/
	.logoWrapper img {
		width: 50px;
		height: auto;
	}
	/******************************************** FOOTER  ********************************************/

	/* Dimensão dos textos */
	.footerPhoneWrappper p,
	.footerPhoneWrappper a {
		font-size: 70px;
		line-height: 84.7px;
	}

	/* Seção do meio com o telemovel */
	.footerPhoneWrappper {
		margin-top: 15px;
	}

	/******************************************** CATÁLOGO  ********************************************/
	/* padding bottom a este elemento único do catáloco */
	.big-bottom {
		padding-bottom: 350px;
	}
	/******************************************** SERVICOS  ********************************************/
	.servico-button-section .botaoDefault {
		padding: 15px 100px 10px 100px !important;
		font-size: 15px;
	}
	/*********************************
	/*********************************
	/*********************************
	/******************************************************************
	/****************************************************************** FORMULÁRIOS POPUP
	****************************************************************** 
	/*********************************
	/*********************************/
	/* Wrapper com formulario mesmo */
	.popup_wrapper {
		padding: 60px;
	}

	/* dimensão do formulario*/
	.popup_wrapper form {
		width: 400px;
	}
	/* Titulo do popup default (preto) */
	.popup_wrapper h2 {
		margin-bottom: 18px;
	}

	/* margin bottom do element antes do botao */
	span[data-name="confirm-politica"] {
		margin-bottom: 30px !important;
	}
	/* padding mo aviso */
	span.avisoMarcacao {
		padding-left: 26px;
	}

	/* Elementos de input */
	.popupInput {
		padding: 12px 7px 7px 12px;
		border-radius: 4px;
		font-size: 15px;
	}

	.closeIcon .burguerElements {
		width: 35px;
		height: 35px;
	}
	.formClose img {
		width: 40px;
		height: 40px;
	}

	/******* FORMULARIO ASSISTENCIA *************/
	.wpsbc-container[data-columns] .wpsbc-calendars .wpsbc-calendar {
		max-width: 350px !important;
	}

	/******************************************** SOBRE NOS  ********************************************/
	.intro-right-side .vc_column-inner {
		height: 100vh;
	}
	.section-title .wpb_wrapper p:nth-child(1) {
		font-size: 16px;
		line-height: 22px;
	}

	/******************************************** SOBRE NOS  ********************************************/
	.page-intro .intro-bottom-text p {
		margin-bottom: 36px !important;
	}

	.intro-italic-bold p {
		font-size: 18px;
		line-height: 24px;
	}

	/* Secção com iamanegs */
	.sobre-mim-lista-imagens {
		margin-top: 74px;
	}

	/* padding top da secção O que fazemos */
	.que-fazemos-section {
		padding-top: 58px;
	}

	/* centrar elementos */
	.que-fazemos-center p {
		font-size: 24px;
		line-height: 32px;
	}
	/* dimensão do te */
	.que-fazemos-center {
		width: 64%;
	}
	/******************************************** HOMEPAGE  ********************************************/

	/*  Hero Section */
	.home-heroSection h1 {
		font-size: 260px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: -181px;
		left: 122px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 330px;
	}
	/* elemento 2 com texto */
	.float-second {
		top: -100px;
		left: 476px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 279px;
	}
	/* elemento 2 com texto */
	.float-third {
		top: -172px;
		right: 60px;
		width: 280px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 357px;
	}
}

/* Media query para menu hamburguer */
@media print, screen and (max-width: 1250px) {
	/* Variáveis p/ reutilizar */
	:root {
		--header-side-margin: 70px;
		--page-side-margin: 70px;
	}
	/* Headers */
	/* .home h1 {
		font-size: 290px;
		line-height: 333px;
	} */
	/* HEaders principais */
	h1 {
		font-size: 80px;
		line-height: 1.2;
	}

	/* Fale connosco */
	/* h2 {
		font-size: 35px;
		line-height: 27px;
	} */
	/* Os nossos serviços / nomes de serviços  */
	/* h3 {
		font-size: 25px;
		line-height: 40px;
	} */

	/* h4,
	h5,
	h6 {
		font-size: 0px;
	} */

	/* Fonts default */
	/* p,
	a,
	span {
		font-size: 16px;
		line-height: 22px;
	}
	label,
	input,
	select,
	textarea,
	option {
		font-size: 18px;
		line-height: 24px;
	} */
	/******************************************** HEADER  ********************************************/

	/******************************************** FOOTER  ********************************************/

	/* Dimensão dos textos */
	.footerPhoneWrappper p,
	.footerPhoneWrappper a {
		font-size: 55px;
		line-height: 69.7px;
	}

	/* última secção com o email */
	.footerEmailWrappper a {
		font-size: 11vw;
	}
	/******************************************** HOMEPAGE  ********************************************/

	/* Secção com duas imagens pós hero section */
	.home-twoImagesSection .vc_column-inner {
		height: 600px;
	}
	/******************************************** POLITICA PRIVACIDADE  ********************************************/
	/* Padding e margem da intro section */
	.page-intro {
		padding-top: 200px;
		margin-top: 0px;
	}

	.page-intro.intro-reused {
		padding-top: 84px;
	}

	.page-intro.noSidePadding {
		padding-top: 200px;
	}
	/******************************************** SERVICOS  ********************************************/

	/******************************************** SOBRE NOS  ********************************************/

	/******************************************** CATÁLOGO  ********************************************/
	/* padding bottom a este elemento único do catáloco */
	.big-bottom {
		padding-bottom: 150px;
	}

	/* Botão Ver Mais */
	.vc_btn3.vc_btn3-color-default.vc_btn3-style-modern {
		padding: 15px 65px 10px 65px !important;
		font-size: 13px;
	}
	/******************************************** CONTACTOS  ********************************************/
}

/* Media query para menu hamburguer */
@media print, screen and (max-width: 1200px) {
	/******************************************** HOMEPAGE  ********************************************/

	/*  Hero Section */
	.home-heroSection h1 {
		font-size: 240px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: -181px;
		left: 115px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 330px;
	}
	/* elemento 2 com texto */
	.float-second {
		top: -100px;
		left: 441px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 279px;
	}
	/* elemento 2 com texto */
	.float-third {
		top: -172px;
		right: 34px;
		width: 280px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 357px;
	}
}

/*tablet landscape or old laptop */
@media print, screen and (max-width: 1050px) {
	/******************************************** HOMEPAGE  ********************************************/

	/*  Hero Section */
	.home-heroSection h1 {
		font-size: 200px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: -184px;
		left: 99px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 330px;
	}
	/* elemento 2 com texto */
	.float-second {
		top: -121px;
		left: 371px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 279px;
	}
	/* elemento 2 com texto */
	.float-third {
		top: -172px;
		right: -22px;
		width: 280px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 332px;
	}
}

/* Size considerado para Tablet */
@media only screen and (max-width: 991px) {
	/* Variáveis p/ reutilizar */
	:root {
		--header-height: 110px;
		--header-side-margin: 32px;
		--page-side-margin: 32px;
	}

	/******************************************** HEADER  ********************************************/

	/******************************************** FOOTER  ********************************************/
	/* Border footer */
	.site-footer {
		border-top: 1px solid var(--black);
		padding-top: 45px;
		margin-top: 40px;
	}
	/* mudar a estrutura do footer para vertical */
	.footerFullGrid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 50px;
	}
	/* Sede com alinhado à direita */
	.footer-navigation.right-navigation li {
		text-align: left;
	}
	.menuOptions.last.right {
		justify-self: left;
	}

	/* Seção do meio com o telemovel */
	.footerPhoneWrappper {
		margin-top: 56px;
	}
	.footerPhoneWrappper.footerFullGrid {
		gap: 0px;
	}
	.footerPhoneWrappper.footerFullFlex.right {
		display: grid;
		justify-content: center;
	}
	/* Dimensão dos textos */
	.footerPhoneWrappper p {
		font-size: 16vw;
		line-height: 1.2;
		text-align: center;
	}
	/* Dimensão dos textos */
	.footerPhoneWrappper a {
		font-size: 14vw;
		line-height: 1.2;
		text-align: center;
	}

	/* última secção com o email */
	.footerEmailWrappper {
		margin-top: 22px;
		padding-top: 32px;
		margin-bottom: 118px;
		border-top: 1px solid var(--black);
	}
	/* última secção com o email */
	.footerEmailWrappper a {
		font-size: 11vw;
	}
	/* logo do footer em mobile */
	.logo.mobile {
		display: flex;
		justify-content: center;
		margin-bottom: 50px;
	}
	/* Logo do footer em desktop */
	.logo.desktop {
		display: none;
	}
	/******************************************** POLITICA PRIVACIDADE  ********************************************/
	/* Padding e margem da intro section */
	.page-intro {
		margin-top: 0px;
		padding-top: 150px;
	}

	.page-intro.intro-reused {
		padding-top: 67px;
	}

	.page-intro.noSidePadding {
		padding-top: 150px;
	}

	.page-intro.noRightPadding {
		padding-right: var(--page-side-margin);
	}

	/* dimensão do H1 para ocupar apenas 50% do ecrã */
	.page-intro h1 {
		width: 100%;
	}

	/* dimensao deste div */
	.politica-privacidade-wrapper {
		width: 75%;
	}

	/* paragrafos da politica com diferentes tamanhos */
	.politica-privacidade-wrapper
		.wpb_text_column.wpb_content_element:nth-child(odd) {
		width: 59%;
	}
	/******************************************** SERVICOS  ********************************************/
	.listagem-servicos {
		margin-bottom: 70px !important;
	}
	.popup_wrapper {
		padding: 60px;
		overflow-y: scroll;
	}
	.popup_wrapper.white {
		height: 90dvh;
	}
	.form_calendario_wrapper {
		grid-template-columns: 1fr;
	}
	.wpsbc-container[data-columns] .wpsbc-calendars .wpsbc-calendar {
		max-width: 450% !important;
	}
	/******************************************** SOBRE NOS  ********************************************/
	.page-intro .intro-bottom-text p {
		width: 100%;
		margin-bottom: 30px !important;
	}
	.intro-italic-bold p {
		width: 100% !important;
		padding-right: 0%;
	}

	/* dimensão do te */
	.que-fazemos-center {
		width: 85%;
	}

	/* ATUALMENTE */
	.atualmente-section {
		margin-top: 53px;
		margin-bottom: 57px;
		padding-top: 53px;
	}

	.atualmente-section .que-fazemos-center {
		width: 80%;
	}

	.intro-reused .intro-right-side {
		margin-top: 24px;
	}
	.intro-reused .intro-right-side .vc_column-inner {
		height: 500px;
	}
	/******************************************** CATÁLOGO  ********************************************/

	/******************************************** CONTACTOS  ********************************************/
	.contactos-formulario-wrapper {
		margin-top: 60px;
	}
	/******************************************** HOMEPAGE  ********************************************/
	.home-heroSection {
		height: 70vh;
		margin-top: 160px;
	}
	.home-heroSection .vc_column-inner {
		align-items: flex-start;
		padding-left: 20px !important;
		padding-right: 20px !important;
		padding-top: 0px !important;
	}
	/*  Hero Section */
	.home-heroSection h1 {
		font-size: 200px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 495px;
		left: 29px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 394px;
		top: -200%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 312px;
		left: 261px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 279px;
		top: -540%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 224px;
		right: -8px;
		width: 280px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 150px;
		top: -130%;
	}
	/********* Fim Hero section *****/

	/* Secção com duas imagens pós hero section */
	.home-twoImagesSection .vc_column-inner {
		height: 500px;
	}
	/* Secção com duas imagens pós hero section */
	.home-twoImagesSection {
		margin: 0px 15px !important;
	}
	/* Paddingda direita */
	.home-twoImagesSection .vc_col-sm-12:nth-child(1) {
		padding-right: 0px;
		padding-bottom: 12px;
	}
	.home-twoImagesSection .vc_col-sm-12:nth-child(2) {
		padding-left: 0px;
	}

	.home-servicosSection h3:not(.nomeServico) {
		margin-bottom: 31px !important;
	}

	.container-img img {
		height: 370px;
	}

	.descricaoServico {
		padding: 0px 25px;
	}
	/* Secção Contactos */
	.home-contactSection {
		margin-bottom: 0px;
	}

	/* Secção de contactos */
	.home-contactFormWrapper .vc_column-inner {
		width: 85% !important;
		padding: 70px 38px !important;
		margin-top: 81px;
		margin-bottom: 138px;
	}

	.home .site-footer {
		margin-top: 0px;
	}

	.service-slide {
		padding: 0px 15px;
	}
}

/* Size considerado para Tablet modo portrait*/
@media only screen and (max-width: 870px) {
	/******************************************** HOMEPAGE  ********************************************/
	/*  Hero Section */
	.home-heroSection h1 {
		font-size: 180px;
	}

	.home-heroSection-text {
		display: block;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 495px;
		left: 28px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 394px;
		top: -200%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 312px;
		left: 237px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 279px;
		top: -540%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 212px;
		right: -37px;
		width: 280px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 150px;
		top: -130%;
	}
	/********* Fim Hero section *****/
}

/* Size considerado para Tablet modo portrait*/
@media only screen and (max-width: 767.5px) {
	/******************************************** HEADER  ********************************************/
	/* Logo no menu mobile */
	header .headerMobile {
		display: block;
	}
	/* Logo no menu mobile */
	header .headerMobile img {
		height: auto;
	}
	header .headerWrapper {
		display: none;
	}

	header.site-header {
		display: flex;
		justify-content: center;
		align-items: center;
		height: fit-content;
	}

	/* Menu Hamburguer */
	.headerMobileBurguer {
		display: block;
	}

	.home .site-header .headerMobile {
		display: block;
	}
	.home .site-header .headerMobile {
		opacity: 0;
	}
	/******************************************** FOOTER  ********************************************/
	/* Dimensão dos textos */
	.footerPhoneWrappper p {
		font-size: 20vw;
		line-height: 1;
	}
	/* Dimensão dos textos */
	.footerPhoneWrappper a {
		font-size: 15vw;
		line-height: 1;
	}

	/* última secção com o email */
	.footerEmailWrappper a {
		font-size: 13vw;
	}
	/******************************************** HOMEPAGE  ********************************************/
	.home-heroSection {
		height: 600px;
		margin-top: -140px;
	}

	/* definir o tamanho da caixa que tem as imagens */
	.home-heroSection .wpb_wrapper:has(.float-element) {
		width: 639px !important;
	}
	.hero-mobile-image {
		display: flex;
		justify-content: center;
		position: relative;
		z-index: 9997;
		margin-top: 0px;
		margin-top: 150px;
	}
	.hero-mobile-image img {
		width: 639px !important;
		height: auto;
		margin-top: 0px;
	}

	.home-heroSection-text {
		display: none;
	}
	/* classe para ficar fixo */
	.sticky {
		position: fixed;
		width: 100%;
		top: 0;
		margin-top: 0px !important;
	}

	.float-element::before {
		left: -10px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 526px;
		left: 17px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 450px;
		top: -245%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 363px;
		left: 185px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 330px;
		top: -655%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 274px;
		right: -8px;
		width: 210px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 260px;
		top: -200%;
	}
	/********* Fim Hero section *****/
	/* Secção com duas imagens pós hero section */
	.home-twoImagesSection .vc_column-inner {
		height: 300px;
	}

	/******************************************** POLITICA PRIVACIDADE  ********************************************/

	/* dimensão do H1 para ocupar apenas 50% do ecrã */
	.page-intro h1 {
		width: 100%;
	}

	/* paragrafos da politica com diferentes tamanhos */
	.politica-privacidade-wrapper
		.wpb_text_column.wpb_content_element:nth-child(odd),
	.politica-privacidade-wrapper {
		width: 100%;
	}
	/******************************************** SERVICOS  ********************************************/
	.servico-button-section {
		flex-direction: column;
	}
	/******************************************** SOBRE NOS  ********************************************/
	.que-fazemos-center p {
		font-size: 20px;
		line-height: 26px;
	}
	.que-fazemos-section {
		padding-top: 70px;
	}
	.que-fazemos-img {
		margin-top: 24px !important;
	}
	.atualmente-section .que-fazemos-center {
		width: 90%;
	}
	.atualmente-section {
		margin-top: 35px;
		margin-bottom: 0px;
		padding-top: 35px;
	}

	/******************************************** CATÁLOGO  ********************************************/
	.page-intro p {
		width: 100%;
	}

	.big-bottom {
		padding-bottom: 45vh;
	}

	/* border nas imagens do catálogo */
	.vc_grid-item-mini .vc_gitem-zone {
		/* border: 1px solid var(--black); */
	}
	/******************************************** CONTACTOS  ********************************************/
}

@media only screen and (max-width: 650px) {
	/******************************************** HOMEPAGE  ********************************************/
	.home-heroSection {
		height: 550px;
	}
	/* definir o tamanho da caixa que tem as imagens */
	.home-heroSection .wpb_wrapper:has(.float-element) {
		max-width: 576px !important;
	}
	.hero-mobile-image {
		margin-top: 150px;
	}
	.hero-mobile-image img {
		width: 576px !important;
	}

	.hero-font-image {
		width: 59px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 530px;
		left: 16px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 450px;
		top: -245%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 363px;
		left: 166px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 330px;
		top: -655%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 274px;
		right: -29px;
		width: 210px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 260px;
		top: -200%;
	}
	/********* Fim Hero section *****/
}

@media only screen and (max-width: 600px) {
	h1 {
		font-size: 13vw;
		line-height: 1.2;
	}

	.vc_btn3.vc_btn3-color-default.vc_btn3-style-modern,
	.wpcf7-submit,
	.botaoDefault {
		padding: 12px 75px 8px 75px !important;
	}
	/* ----------------------------------- COOKIES PROMPT ----------------------------------- */
	/* Estrutura do Prompt de Cookies */
	.cookiesPrompt {
		top: 100%;
		left: 0%;
		width: 100%;
		transform: translate(0px, -100%);
	}

	.mc4wp-form-fields p {
		text-align: center;
	}

	.success-message,
	.wpcf7-response-output {
		top: calc(var(--header-height) + var(--header-top-margin) + 20px);
		width: 100%;
		text-align: center;
	}
	/******************************************** HEADER  ********************************************/

	/******************************************** FOOTER  ********************************************/
	/* Dimensão dos textos */
	.footerPhoneWrappper p {
		font-size: 19vw;
	}
	/* Dimensão dos textos */
	.footerPhoneWrappper a {
		font-size: 15vw;
	}

	/* última secção com o email */
	.footerEmailWrappper a {
		font-size: 12vw;
	}
	/******************************************** HOMEPAGE  ********************************************/

	/******************************************** POLITICA PRIVACIDADE  ********************************************/

	/******************************************** SERVICOS  ********************************************/
	.servico-button-section {
		margin-left: var(--header-side-margin);
		margin-right: var(--header-side-margin);
	}

	.servico-button-section .botaoDefault {
		width: 100%;
		text-align: center;
		padding: 17px 0px 12px 0px !important;
	}

	/******************************************** SERVICOS  ********************************************/
	/*********************************
	/*********************************
	/*********************************
	/******************************************************************
	/****************************************************************** FORMULÁRIOS POPUP
	****************************************************************** 
	/*********************************
	/*********************************/
	/* Wrapper com formulario mesmo */
	.popup_wrapper {
		padding: 40px;
	}

	/* dimensão do formulario*/
	.popup_wrapper form {
		width: 80vw;
	}
	.popup_wrapper h2 {
		width: 280px;
		margin: 0 auto;
	}

	/* Titulo do popup default (preto) */
	.popup_wrapper h2 {
		margin-bottom: 0px;
	}
	/* Margem dos Elementos de Input */
	.wpcf7-form-control-wrap {
		margin-top: 20px !important;
	}
	.calendario_wrapper {
		margin-top: 30px !important;
	}
	/* padding mo aviso */
	span.avisoMarcacao {
		padding-left: 20px;
	}

	/* Elementos de input */
	.popupInput {
		padding: 12px 7px 7px 12px;
		border-radius: 4px;
	}
	/* Elemento do X para fechar formulario */
	.closeIcon {
		border: 2px solid var(--white);
		top: 15px;
		right: 15px;
	}

	.closeIcon .burguerElements {
		width: 35px;
		height: 35px;
	}
	.closeIcon .topLine,
	.closeIcon .bottomLine {
		width: 50%;
		height: 2px;
	}

	/******************************************** SOBRE NOS  ********************************************/
	.intro-reused .intro-right-side {
		padding: 0px var(--page-side-margin);
	}
	/* Esconder estrutura com slickslider se nao for mobile*/
	.sobre-mim-lista-imagens.slick-wrapper {
		display: block;
		padding-left: var(--page-side-margin);
	}

	/* dimensões dos slides */
	.img-slide {
		height: 370px;
		margin-right: 7px;
	}

	/******************************************** CATÁLOGO  ********************************************/

	/******************************************** CONTACTOS  ********************************************/
}

@media only screen and (max-width: 570px) {
	/******************************************** HOMEPAGE  ********************************************/
	/*  Hero Section */
	.home-heroSection {
		height: 550px;
	}
	/* definir o tamanho da caixa que tem as imagens */
	.home-heroSection .wpb_wrapper:has(.float-element) {
		max-width: 507px !important;
	}
	.hero-mobile-image {
		margin-top: 150px;
	}
	.hero-mobile-image img {
		width: 507px !important;
	}
	.hero-font-image {
		width: 51px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 510px;
		left: 16px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 420px;
		top: -220%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 354px;
		left: 148px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 330px;
		top: -655%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 287px;
		right: -9px;
		width: 167px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 260px;
		top: -100%;
	}
	/********* Fim Hero section *****/
}

@media only screen and (max-width: 500px) {
	/******************************************** HOMEPAGE  ********************************************/
	/* definir o tamanho da caixa que tem as imagens */
	.home-heroSection .wpb_wrapper:has(.float-element) {
		max-width: 421px !important;
	}
	.hero-mobile-image {
		margin-top: 150px;
	}
	.hero-mobile-image img {
		width: 421px !important;
	}
	.hero-font-image {
		width: 39px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 496px;
		left: 14px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 399px;
		top: -205%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 354px;
		left: 124px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 280px;
		top: -545%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 287px;
		right: -37px;
		width: 167px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 227px;
		top: -75%;
	}
	/********* Fim Hero section *****/
}

/* Size considerado Mobile - 430px*/
@media only screen and (max-width: 430px) {
	/* Variáveis p/ reutilizar */
	:root {
		--page-side-margin: 16px;
	}
	/******************************************** HEADER  ********************************************/
	header .headerMobile img {
		width: 100%;
		padding: 0px var(--page-side-margin);
	}

	/******************************************** FOOTER  ********************************************/
	/* Dimensão dos textos */
	.footerPhoneWrappper p {
		font-size: 18vw;
	}
	/* Dimensão dos textos */
	.footerPhoneWrappper a {
		font-size: 14vw;
	}

	/******************************************** HOMEPAGE  ********************************************/
	/*  Hero Section */
	/*  Hero Section */
	.home-heroSection {
		height: 690px;
	}
	/* definir o tamanho da caixa que tem as imagens */
	.home-heroSection .wpb_wrapper:has(.float-element) {
		max-width: 378px !important;
	}
	.hero-mobile-image {
		margin-top: 150px;
	}
	.hero-mobile-image img {
		width: 378px !important;
	}
	.hero-font-image {
		width: 36px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 648px;
		left: 14px;
		width: 299px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 545px;
		top: -316%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 486px;
		left: 113px;
		width: 181px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 410px;
		top: -840%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 403px;
		right: -4px;
		width: 119px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 330px;
		top: -90%;
	}

	.home-contactFormWrapper h2 {
		margin-bottom: 35px !important;
	}
	/********* Fim Hero section *****/
	/******************************************** POLITICA PRIVACIDADE  ********************************************/

	/******************************************** SERVICOS  ********************************************/
	/*********************************
	/*********************************
	/*********************************
	/******************************************************************
	/****************************************************************** FORMULÁRIOS POPUP
	****************************************************************** 
	/*********************************
	/*********************************/
	/* Wrapper com formulario mesmo */
	.popup_wrapper {
		padding: 40px 30px 40px 30px;
	}

	/* Margem dos Elementos de Input */
	.wpcf7-form-control-wrap {
		margin-top: 15px !important;
	}
	.calendario_wrapper {
		margin-top: 25px !important;
	}

	/* padding mo aviso */
	span.avisoMarcacao {
		padding-left: 15px;
	}

	/* Elemento do X para fechar formulario */
	.closeIcon {
		border: 1px solid var(--white);
		top: 15px;
		right: 15px;
	}

	.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header {
		padding-bottom: 20px !important;
	}

	/******************************************** SOBRE NOS  ********************************************/

	/******************************************** CATÁLOGO  ********************************************/

	/******************************************** CONTACTOS  ********************************************/
}
/* smartphones plus */
@media only screen and (max-width: 414px) {
	/******************************************** HEADER  ********************************************/

	/******************************************** FOOTER  ********************************************/

	/******************************************** HOMEPAGE  ********************************************/

	/******************************************** POLITICA PRIVACIDADE  ********************************************/

	/******************************************** SERVICOS  ********************************************/

	/******************************************** SOBRE NOS  ********************************************/
	.intro-reused .intro-right-side .vc_column-inner {
		height: 350px;
	}
	/******************************************** CATÁLOGO  ********************************************/

	/******************************************** CONTACTOS  ********************************************/
}
/* smartphones normais  */
@media only screen and (max-width: 378px) {
	/******************************************** HOMEPAGE  ********************************************/
	p,
	a,
	span {
		font-size: 14px;
		line-height: 20px;
	}
	/*  Hero Section */
	.home-heroSection h1 {
		font-size: 75px;
	}

	/* definir o tamanho da caixa que tem as imagens */
	.home-heroSection .wpb_wrapper:has(.float-element) {
		max-width: 335px !important;
	}
	.hero-mobile-image {
		margin-top: 150px;
	}
	.hero-mobile-image img {
		width: 335px !important;
	}
	.hero-font-image {
		width: 36px;
	}

	/* elemento 1 com texto */
	.float-first {
		top: 639px;
		left: 14px;
		width: 230px;
	}
	/* Linha ao lado de cada caixa*/
	.float-first::before {
		height: 530px;
		top: -345%;
	}
	/* elemento 2 com texto */
	.float-second {
		top: 483px;
		left: 101px;
		width: 121px;
	}
	/* Linha ao lado de cada caixa*/
	.float-second::before {
		height: 377px;
		top: -535%;
	}
	/* elemento 2 com texto */
	.float-third {
		top: 401px;
		right: -18px;
		width: 119px;
	}
	/* Linha ao lado de cada caixa*/
	.float-third::before {
		height: 325px;
		top: -134%;
	}
	/********* Fim Hero section *****/
}
/* iphone 5 <=  */
@media only screen and (max-width: 320px) {
}
