@media (max-width: 768px) {


	p {
		font-size: 14px;
	}

	.display-on-hover {
		opacity: 1;
	}

	#planos .individual .principal h4 span {
		font-size: 11px;
		right: -5px;
	}

	.coks-acepts {
		position: fixed;
		bottom: 4%;
		left: 5%;
		z-index: 2;
		width: 90%;
		margin: 0 auto;
	}

	#planos .individual {
		padding: 1em 1em;
		margin-bottom: 1em;
	}

	#planos .individual.especial .especial-spa span {
		transform: translate(25%, 0);
		font-size: 12px;
	}

	#planos .texto-empresa {
		margin-top: 2em;
	}

	p.subtitle {
		font-size: 14px;
		line-height: normal;
	}

	#planos .individual .valor h2 {
		font-size: 50px;
	}

	#planos .individual .default-button {
		font-size: 12px;
		padding: 1em 10px;
		margin-bottom: 0;
	}

	#planos .individual .descricao {
		font-size: 12px;
	}

	#planos .individual .instalacao span {
		font-size: 11px;
	}

	#planos .individual .valor .apenas {
		margin-top: .5em;
	}

	#planos .individual .valor .apenas {
		font-size: 18px;
	}

	#planos .individual .valor .mes-numero span {
		font-size: 12px;
	}

	#planos .individual .valor .mes-numero,
	#planos .individual .valor .apenas span {
		font-size: 10px;
	}

	#home {
		padding-top: 0em;
		background: #fff;
		height: auto;
	}

	header {
		position: fixed;
		background-color: transparent;
		border: 0;
	}

	#home .absolute-center h1,
	#home .absolute-center h2,
	#home .absolute-center ul {
		width: 100%;
	}

	.conteudo {
		padding-top: 5em;
		background-color: var(--fundo);
	}

	#atendimento .individual .principal img {
		width: 40px;
	}

	#atendimento .texto-atendimento {
		margin-top: 1em;
	}

	#local .texto-local ul {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 0 10px;
	}

	#local .texto-local ul li span.default-button {
		font-size: 12px;
		padding: 1em;
		border-radius: 5px;
		margin: 5px 0;
	}

	.baloon {
		flex-direction: row;
		text-align: center;
	}

	.baloon b {
		font-size: 16px;
		text-align: left;
	}

	.baloon p {
		color: #626262;
		text-align: left;
	}

	.speech-bubble::before,
	.speech-bubble::after {
		left: 20px;
	}

	.baloon img {
		width: 70px;
	}

	.speech-bubble {
		width: 100%;
		padding-right: 1em;
		padding-left: 2em;
		border-radius: 15px;
	}

	#portal p.subtitle {
		text-align: center;
		font-size: 16px;
		padding: 0 2em;
	}

	.default-button.small {
		width: 100%;
		font-size: 12px;

		padding: .5em 1em;
	}


	footer .list-itens h4 {
		font-size: 20px;
	}

	#pagina-sobre .sobre-info .banner-principal {
		height: auto;
	}

	#pagina-sobre .sobre-info .banner-text .lista-itens ul li {
		flex: auto;
	}

	#pagina-sobre .sobre-info .banner-principal img {
		max-height: 200px;
		width: auto;
		height: auto;
		object-fit: contain;
		margin: 0 auto;
		display: block;
		margin-bottom: -10%;
	}

	#pagina-sobre .sobre-info .banner-principal h1 {
		font-size: 2em;
		text-align: center;
		padding: 1em;
		padding-bottom: 5px;
	}

	#pagina-sobre .sobre-info .bottom-banner .d-flex {
		display: grid !important;
	}

	#pagina-sobre .sobre-info .banner-principal h2 {
		text-align: center;
		font-size: 14px;
	}

	#infos-site .individual .interno img {
		width: 20px;
	}

	#infos-site .d-flex {
		display: grid !important;
		grid-template-columns: 35% 65%;
		/* primeira coluna menor, segunda maior */
		grid-template-rows: repeat(2, 1fr);
		gap: 2px;
	}

	#infos-site .individual ul li {
		font-size: 18px;
		margin: 0;
	}

	#infos-site {
		margin: 2em 0;
	}

	/* Primeiro item ocupa toda a coluna da esquerda */
	#infos-site .individual:first-child {
		grid-column: 1;
		grid-row: 1 / 3;
		/* ocupa as duas linhas */
	}

	/* Os demais ficam na coluna da direita, 2 por linha */
	#infos-site .individual:nth-child(2) {
		grid-column: 2;
		grid-row: 1;
	}

	#infos-site .individual:nth-child(3) {
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
	}

	#infos-site .individual:nth-child(4) {
		grid-column: 2;
		grid-row: 2;
	}

	#infos-site .individual .interno {
		padding: .5em 0em;
	}

	#infos-site .individual .interno h3 {
		font-size: 12px;
		font-weight: normal;
	}

	#infos-site .individual:nth-child(5) {
		grid-column: 2;
		grid-row: 2;
		justify-self: end;
	}

	/* Faz com que os itens 2–5 ocupem metade da coluna direita */
	#infos-site .individual:not(:first-child) {
		width: calc(50% - 2px);
	}

	.btn-collapse {
		width: 100%;
		text-align: left;
		background: none;
		border: none;
		padding: 0;
	}

	.submenu {
		list-style: none;
		padding-left: 20px;
		margin-top: 10px;
	}

	.submenu li {
		padding: 8px 0;
	}

	.arrow {
		float: right;
		transition: transform 0.3s;
	}

	[aria-expanded="true"] .arrow {
		transform: rotate(180deg);
	}

	#topo .menu-mobile .list-group-item.especial {
		background: var(--main-color);
		border-radius: 30px !important;
		border: 1px solid var(--second-color);
		padding: .5em 2em;
		color: var(--main-color);
		text-align: center;
		font-weight: bold;
		margin-top: 2em;
	}

	#topo .menu-mobile .list-group-item a {
		display: block;
		padding: 1em;
		font-weight: 500;
		color: #fff;
		font-size: 18px;
	}

	#topo .offcanvas.show {
		background-color: var(--second-color);
	}

	#topo .menu-mobile #offcanvaMenuLabel img {
		width: 50px;
	}

	#topo .menu-mobile .list-group-item.especial a {
		color: var(--second-color);
	}

	footer .assign .align-end {
		text-align: center;
	}

	#servicos-tab .nav-tabs .nav-link {
		width: auto;
	}

	.lista-servicos .nav-tabs {
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		overflow-y: hidden;
		display: flex;
		-webkit-overflow-scrolling: touch;
	}

	/* Remove a barra de scroll padrão se quiser algo mais limpo (opcional) */
	.lista-servicos .nav-tabs::-webkit-scrollbar {
		height: 4px;
	}

	.lista-servicos .nav-tabs::-webkit-scrollbar-track {
		background: #f1f1f1;
		border-radius: 10px;
	}

	.lista-servicos .nav-tabs::-webkit-scrollbar-thumb {
		background: #888;
		border-radius: 10px;
	}

	.lista-servicos .nav-item {
		flex-shrink: 0;
		max-width: 200px;
	}

	.info-obs {
		padding: 1em 0;
		display: block;
	}

	/* Garante que os botões não quebrem linha */
	.lista-servicos .nav-link {
		white-space: normal !important;
		/* força a quebra de linha */
		word-wrap: break-word;
		/* quebra palavras longas se necessário */
		text-align: center;
		/* opcional, pra ficar centralizado */
	}

	footer .text {
		text-align: center;
		padding-top: 0;
		border: 0;
		padding-bottom: 0;
	}

	footer .spacer {
		padding-bottom: 0;
		padding-top: 4em;
	}

	footer .text-left {
		text-align: center;
	}

	footer .assign {
		background-color: #fff;
		text-align: center;
		line-height: normal;
		padding: 1em 0;
	}

	footer .list-itens h5 {
		color: #fff;
		font-size: 14px;
		font-weight: normal;
	}

	#perguntas_frequentes h3.heading {
		text-align: left;
	}

	#depoimento.spacer {
		padding: 2em;
	}

	#perguntas_frequentes .accordion-body {
		padding-left: 0;
		padding-right: 0;
	}

	#depoimento {
		padding: 2em 0;
		max-width: 90%;
		margin: 0 auto;
	}

	#principal-cta h3.heading.white {
		text-align: center;
		font-size: 24px;
	}

	#principal-cta .text p {
		color: #fff;
		margin-bottom: 0;
		text-align: center;
		margin-top: 2em;
		margin-bottom: 2em;
	}

	#perguntas_frequentes .accordion-button {
		padding-left: 0px;
	}

	#perguntas_frequentes .texto-perguntas {
		margin-top: 2em;
		margin-left: 0px;
	}

	#portal {
		margin-top: 3em;
	}

	.spacer {
		padding: 2em 0;
	}

	#portal ul li {
		margin-right: 0;
	}

	#portal .portal-texto .list-group-horizontal {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 0 10px;
	}

	#portal img.cell {
		width: 300px;
		margin: 0 auto;
		display: table;
		margin-top: -15%;
	}

	#portal h3 {
		font-size: 36px;
		text-align: center;
	}

	#local .texto-local p {
		font-size: 14px;
		text-align: center;
	}

	#atendimento .individual {
		margin-bottom: 1em;
	}

	footer .list-itens .list ul {
		grid-template-columns: repeat(2, 1fr);
	}

	footer .list-itens .list {
		flex-flow: column;
	}

	footer .list-itens .default-button.large {
		margin: 0;
		font-size: 12px;
		padding: 1em 0;
	}

	footer .list-itens .default-button.large .svg-inline--fa {
		font-size: 21px;
		margin-bottom: 7px;
	}

	footer .list-itens .list ul li {
		margin: 0;
	}

	body {
		overflow-x: hidden;
	}

	.mobile-none {
		display: none !important;
	}

	.mobile-only {
		display: block !important;
	}

	#home .absolute-center ul {
		margin-top: 10px;
	}

	#home .absolute-center ul li {
		font-size: 10px;
	}

	#home .carousel-inner {
		height: auto;
	}

	.logo-banner {
		margin: 0;
		display: block;
		margin-bottom: 2em;
		max-width: 100px;
		margin-left: 3em;
	}

	#home .absolute-center .superior {
		position: relative;
	}

	#home .absolute-center p span {
		color: var(--second-color);
	}

	/* personalização */
	#home .absolute-center {
		top: 55%;
		transform: translate(-50%, -50%);
	}

	#home .absolute-center h1 {
		font-size: 46px;
		line-height: 87%;
		letter-spacing: -2%;
	}

	#home .absolute-center h1::after {
		width: 30px;
	}

	#home .absolute-center .superior .plans {
		font-size: 14px;
	}

	#home .absolute-center .center .valor .rs {
		font-size: 30px;

	}

	#home .absolute-center .center .apartir {
		font-size: 10px;
	}



	#home .absolute-center .center .valor .nine {
		font-size: 80px;
	}

	#home .absolute-center .center .valor .ninespa {
		font-size: 20px;
	}

	#home .absolute-center .center .valor .mes {
		font-size: 14px;
	}

	#home .absolute-center .bottom h2 {
		font-size: 11px;
	}

	#home .absolute-center .superior .valor-plano .mega {
		font-size: 18px;
	}

	.menu-btn {
		margin-left: 0;
	}

	#home .absolute-center h2 {
		font-size: 14px;
		margin-bottom: 10px;
	}

	#typing {
		display: block;
	}



	#home .absolute-center p {
		font-size: 14px;
	}

	#analise-dados .lista-analise .individual {
		padding: 1em;
	}

	header#topo {
		background-color: transparent;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
		border-bottom: 0;
	}

	#analise-dados .res p {
		text-align: center;
	}

	#analise-dados .align-end {
		text-align: center;
		margin-top: 2em;
	}

	#infos-lucro .lista-numeros {
		flex-direction: column;
		padding: 0 5em;
		gap: 0;
	}

	#infos-lucro .lista-numeros .individual {
		border-left: 0;
	}

	#sobre-first h3 {
		font-size: 12px;
	}

	#sobre-first p.sobre,
	#sobre-second p.sobre {
		font-size: 14px;
	}

	h2.heading {
		line-height: 89%;
		font-size: 40px;
	}

	.default-button {
		font-size: 12px;
		padding: 15px 40px;
		line-height: normal;
		border: 2px solid rgba(183, 135, 130, .45);
		font-weight: bold;
	}

	#sobre-first img {
		width: 80%;
		margin: 0 auto;
		display: block;
		margin-bottom: 3em;
	}

	#analise-dados .pos-relative img {
		display: none;
	}

	#servicos-tab .text-serv {
		padding-top: 2em;
	}

	.tags-banner span {
		padding: 0.5em 1em;
		margin: 0.2em;
		font-size: 8px;
	}

	.container-fluid.especial {
		padding-right: calc(var(--bs-gutter-x) * 0.5);
		padding-left: calc(var(--bs-gutter-x) * 0.5);
		padding-top: 5px;
	}



	#home .absolute-center .superior .valor-plano {
		width: 70%;
	}


	header#topo .logo-principal .subtitle-logo {
		font-size: 10px;
		margin-left: 1em;
		line-height: normal;
	}

	.logo-principal a {
		display: flex;
		align-items: flex-start;
	}

	header#topo.menu-fixo .container-fluid.especial {
		padding: 0 1em;
	}

	#servicos .texto-empresa .lista-servicos .individual h4 {
		font-size: 16px;
		font-weight: 500;
	}

	#servicos-tab .texto-empresa {
		padding: 1.5em;
	}

	#servicos-tab .texto-empresa .buttons {
		display: flex;
	}

	#servicos .texto-empresa .lista-servicos .individual a {
		margin-bottom: 1.5em;
	}

	#servicos-tab .text-serv h3 {
		font-size: 16px;
		line-height: normal;
	}

	h3.heading {
		font-size: 20px;
	}

	#atendimento .individual a.default-button {
		font-size: 12px;
	}

	#atendimento .individual .principal h4 {
		padding: 0 0em;
	}

	.pe-5 {
		padding-left: 3rem !important;
	}

	#servicos a.trabalho-1 img {
		height: 200px;
	}

	footer h2.heading {
		font-size: 50px;
	}

	#servicos a.trabalho-1,
	#servicos a.trabalho-2,
	#servicos a.trabalho-3,
	#servicos a.trabalho-4 {
		border-radius: 20px;
	}

	#servicos a.trabalho-2 img {
		height: 300px;
	}

	#servicos a.trabalho-3 img,
	#servicos a.trabalho-4 img {
		height: 200px;
	}

	.ps-5 {
		padding-left: 2em !important;
	}

	.pt-5 {
		padding-top: 0 !important;
	}

	.padding-texto {
		margin-top: -30%;
	}

	header#topo.menu-fixo .menu-btn img {

		filter: brightness(0.3);
	}

	header#topo.menu-fixo .logo-principal img {
		align-self: center;
		width: 50px;
	}

	.search-container button {
		width: 40px;
		height: 40px;

		padding: 1px 8px;
	}

	.search-container {
		height: 40px;
		width: 40px;
		line-height: 40px;
	}

	.offcanvas.offcanvas-start {
		width: 60%;
	}
}

@media (max-width: 480px) {}

@media (min-width: 360px) and (max-width: 490px) {}

@media (min-width: 500px) and (max-width: 767px) {}