/* 

cores do logotipo: azul:#00B3FB R: 0 G: 179 B: 251
e verde: #22F1AA R: 34 G: 241 B: 170 

O site possui dois header o .header que é da home e o .header-alternado 
que é das páginas internas.

*/

/* Reset CSS */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}

sup {
	font-size: 1.2rem;
	color: blue;	
}

@font-face {
  font-family: 'Roboto';
  src: url('../fonts/Roboto-VariableFont_wdth,wght.woff2') format('woff2');
  font-weight: 100 900; 
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('../fonts/Roboto-Italic-VariableFont_wdth,wght.woff2') format('woff2');
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

*{font-family: 'Roboto', Arial, sans-serif;}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {display: block;}

ol, ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

body,
html {
	scroll-behavior: smooth; 
	overflow-x: hidden;
	min-height: 100vh;
}

article strong {font-weight:bold;}

a[data-balao]:link, a[data-balao]:visited {
	position: relative;
	text-decoration: none;
	border-bottom: solid 1px; 
	cursor: pointer;
}

a[data-balao]:before {
	content: "";
	position: absolute;
	border-top: 1em solid #0090ff;
	border-left: 1.5em solid transparent;
	border-right: 1.5em solid transparent;
	display: none;
	top: -1em;
}

a[data-balao]:after {
	content: attr(data-balao);
	position: absolute;
	color: white;
	top: -2.5em;
	left: -1em;
	background: #0090ff;
	padding: .25em .75em;
	border-radius: .5em;
	white-space: nowrap;
	width:auto;
	display: none;
}

a[data-balao]:hover:before, a[data-balao]:hover:after {display: inline;}

.necessario {display:none;} /* campo invisível para evitar spam */

.contatoTopo {z-index: 999 !important;}

.error-message {color:red; clear: both;}
.success-message {
position: relative;	
color: #00abff;
margin: 1rem auto;
text-align: center;
display: inline-block;
font-weight: bold;
font-size: 1.1rem;
width: 100%;	
}

button {
float: right;
margin: 2rem 0 0 0;
width: 5rem;
height: 2.5rem;
color: white;
border: 0;
font-size: 1rem;
border-radius: 0.5rem;	
cursor:pointer;
background: green;
  transition: background 0.3s ease;
   
}

button:hover {background:#08a408}

/* BOTÃO DO WHATSAPP no rodapé */


.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;
}

.whats-float {
	position: absolute;
	transform: translate(218px,0);
	right: -3.4rem;
	width: 308px;
	height: 4rem;
	overflow: hidden;
	color: #000;
	z-index: 10;
	transition: all 0.5s ease-in-out;
	vertical-align: middle;
	border-radius: 50px 0 0 50px;
	bottom: 5rem;
	background-color: #25d366;
}

.whats-float a span {
    position: absolute;	
    color: #000;
    font-size: 1.2rem;
	padding:8px 0 10px 0;
    line-height: 1.5rem;
}

.whats-float img {
	transform: rotate(0deg);
	transition: all 0.5s ease-in-out;
	width: 20%;
	height: auto;
	margin:0 1.3rem 0 0.5rem;
}

.whats-float:hover {
    color: #FFFFFF;
    transform:translate(0px,0px);
}

.whats-float:hover i  {transform:rotate(360deg);}


#accordion {
	position:relative;
	padding: 1rem;
	border: 4px solid #fff;
	box-shadow: 0px 1px 1px 5px rgba(215, 215, 215, 0.2);
	border-radius: 20px 0 20px 0;
	background: #f0f0f0;  
}

h1 {
  color: #333;
  font-size: 1.4rem;
  text-align: center;
}

main h2 {
	font-size:1.2rem;
	font-weight: 500;	
}

.box-resumo {
  overflow: hidden;
  width: 41.5vw;
  margin: 0 auto;
}

#parceiros {
	position:relative;
	margin: 0 auto 8rem auto;
    width: 90vw;
}

#parceiros p {text-align: justify;}

#parceiros > p {
	overflow: hidden;
	width: 41.5vw;
	margin: 0 auto;
	font-size: 1.2rem;
	line-height: 1.5rem;  
}

.limite-tit {
	position: relative;
	margin: 5rem auto 2.8rem auto;	
}

#parceiros picture {
	position: relative;
	float: left;	
	margin: 2rem auto 0 auto;
	display: block;
	text-align: center;	
	width: 251px;
	margin-left: 1rem;	
}

#parceiros figcaption {
	padding: 0.5rem;
	width: 251px;
	height: 6rem;	
	display: inline-block;
	background: #eee;  
}

#parceiros figcaption p {text-align:center !important;}

#telaToda small {
	position:absolute;
	bottom:0;
	color:#fff;
	transform: rotate(-90deg);
}

.envolve {
  position: relative;
  display: block;
}

.enderecoRodape address {
	font-size: 1rem;
    line-height: 1.3rem;
}

.limiteTitulo {position:relative;}

.center {text-align:center;}

.logo .logotipo-resumido {display:none; margin: 2.2rem 0 0 1.2rem;}

.visually-hidden {
	position: absolute;
	top: auto;	
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

#tratamentos .header h1 {
	position: relative;  
	overflow: hidden;
	z-index: 0;
}

.tit {text-align:center;}
h2.tit span {display:block; text-transform: uppercase; color: #0bb6fb; font-size: 1rem; margin-bottom: 0.5rem;}

.contatoTopo {
	position: relative;
	display: inline-block;	
}
.contatoTopo a {
	position:absolute;
	color: #393939;
	display: block;
	width: auto;
	background: url(../imagens/ico-whatsapp.png) no-repeat;
	background-position: right;
	background-size: contain;	
	text-decoration: none;
}
.contatoTopo .whatsapp {width: auto; display: inline-block;}

/* ERRO 404 */

#erro article {
	position: relative;
	display:block;
	width:90vw;
	height:auto;
	margin:0 auto;
}

/* HEADER */

header {
	color: #000;
	transition: all 0.9s ease;
}

.header {
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 10;
    transition: background-color 0.3s ease-in-out; 
	background-color: transparent;		
}

.header.sticky {
	box-shadow: rgba(105, 194, 157, 0.4) 0px 5px, rgba(105, 194, 157, 0.3) 0px 10px, rgba(52, 169, 224, 0.2) 0px 15px, rgba(52, 169, 224, 0.1) 0px 20px, rgba(52, 169, 224, 0.05) 0px 25px;
	background-color: #fff; 
	transition: background-color 0.3s ease-in-out;
}

/* HEADER ALTERNADO - PÁGINAS INTERNAS */

.header-alternado {
	position: relative;
	top: 0;
	width: 100%;
	z-index: 10;
	transition: background-color 0.2s ease-in-out;	
	display: inline-block;
    transition: background-color 0.3s ease-in-out; 	
}
.header-alternado .menuPrincipal {
	background: rgb(74,175,216);
	background: -moz-linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%);
	background: linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#4aafd8",endColorstr="#66c0a2",GradientType=1);	
}

.header-alternado.sticky {
	box-shadow: none;
	background-color: #fff; 
	transition: background-color 0.3s ease-in-out;
}

.header-alternado .logotipo-resumido {display:none  !important;}
.header-alternado.sticky .logotipo-resumido {display:block  !important;}

.header.sticky .logotipo-original {display:none;}
.header.sticky .logotipo-resumido {display:block;}


/* MENU */

.header ul {
	margin: 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
}

.header-alternado li a,
.header li a {
	display: block;
	padding: 20px 20px;
	text-decoration: none;
	color:#fff;
}
.header-alternado li a:hover,
.header li a:hover,
.header .menu-btn:hover {color:#00B3FB}

.header-alternado .menu,
.header .menu {
    position: absolute;
    top: -7rem;
    width: 100vw;
    padding: 2rem; 
    color: #49aed9;
    opacity: 0; 
    transform: translateY(-100%); 
    transition: opacity 0.3s ease, transform 0.3s ease;
	background:#000;
}

.header-alternado .menu-icon,
.header .menu-icon {
	position: relative;	
	cursor: pointer;
	display: inline-block;
	user-select: none;
	z-index:9;
}
.header-alternado .menu-icon .navicon,
.header .menu-icon .navicon {
	position: relative;	
	width: 2rem;
	height: 0.2rem;	
	display: block;
	transition: background .1s ease-out;
	background: #000;
}

.header-alternado .menu-icon .navicon:before,
.header-alternado .menu-icon .navicon:after,
.header .menu-icon .navicon:before,
.header .menu-icon .navicon:after {
	position: absolute;
	content: '';
	display: block;
	width: 100%;	
	height: 100%;
	margin-top: 0.8rem;
	transition: all .2s ease-out;
	background: #000;

}

.header-alternado .menu-icon .navicon:before,
.header-alternado .menu-icon .navicon:after,
.header .menu-icon .navicon:before {top: 0.2rem;}
.header .menu-icon .navicon:after {top: -5px;}

.header-alternado .menu-btn,
.header .menu-btn {display: none;}

.header-alternado .menu-btn:checked ~ .menu,
.header .menu-btn:checked ~ .menu {
	position: absolute;
	top:-2rem;
	max-height: 100vh;
	width: 100vw;
	padding:0;
	color: #49aed9;
	display:block;
	opacity: 1; 
	transform: translateY(0); 
}

.header-alternado .menu-btn:checked ~ .menu,
.header .menu-btn:checked ~ .menu,
.header-alternado.sticky .menu-btn:checked ~ .menu,
.header.sticky .menu-btn:checked ~ .menu {padding:7rem 0 50rem 2rem;}

.header-alternado .menu-btn:checked ~ .menu-icon .navicon,
.header .menu-btn:checked ~ .menu-icon .navicon {background: transparent;}

.header-alternado .menu-btn:checked ~ .menu-icon .navicon:before,
.header .menu-btn:checked ~ .menu-icon .navicon:before {transform: rotate(-45deg); background-color: #00ffea;}

.header-alternado .menu-btn:checked ~ .menu-icon .navicon:after,
.header .menu-btn:checked ~ .menu-icon .navicon:after {transform: rotate(45deg); background-color: #00ffea;}

.header-alternado .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
.header-alternado .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after,
.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {top: 0;}

.header-alternado.sticky,
.header.sticky {
	position: relative;
	height: 6rem;
	transition: height 0.3s ease, background-color 0.3s ease;
	top: 0;
	display: inline-block;
	background-color: #000;
	opacity:1;
	box-shadow: rgba(105,194,157, 0.4) 0px 5px, rgba(105,194,157, 0.3) 0px 10px, rgba(52,169,224, 0.2) 0px 15px, rgba(52,169,224, 0.1) 0px 20px, rgba(52,169,224, 0.05) 0px 25px;
}
.header-alternado .menu,
.header.sticky .menu {
	top: -0.6rem; 
	transition: top 0.3s ease;
}

.header-alternado.sticky .menu-btn:checked ~ .menu,
.header.sticky .menu-btn:checked ~ .menu {top: 0; transition: top 0.3s ease; background:#00ffea;}

.header-alternado.sticky .logo img,
.header.sticky .logo img {margin: 1.3rem 0 0 1.2rem;}

.header-alternado.sticky .menu-icon,
.header.sticky .menu-icon {
	position: absolute;	
	top: 0;
	right: 0;
	z-index: 99;
}

.bg-header {
	position: relative;	
	width: 100vw;
	height: auto;
}

.header-alternado .logo img {
  margin: 0.5rem auto 0 auto;
  width: 8rem;
  display: block;
}	

.logo img {
	width: 6.5rem;
	height: auto;
	margin: 1rem 0 0 1rem;
}	

.header.sticky .logo img {width:9rem;}


/* FIM HEADER ... QUE LOUCURA */


/* LISTAS UL  */

.marcadores {
	position: relative;	
	text-indent: -1.5rem;
	list-style-position: outside;
	margin: 2rem 0 2rem 1.5rem;
}
.marcadores li {
	position: relative;	
font-size: 1rem;
  line-height: 1.3rem;
	color: #333;
	font-weight: 300;
	text-indent: -1.3rem;	
	margin-top: 1rem;
}
.marcadores li::before {
  content: '\2713';
  font-weight: bold;
  color: #22F1AA;
  font-size: 1.1rem;
  margin-right: 0.4rem;
}

.marcadores li span {
	color: #3b92c0;
	font-weight: bold;
	font-size: 1.1rem;
	margin-right: 0.5rem;
	width: 24%;

}

.ico-agende {position: relative; margin: 2rem 0 2rem 0;}
.ico-agende:before {content: ' \2705';}


/* BLOGO DA CLAU */

.main-home-blog {position: relative;}

#blog-home {padding: 1rem;}

#pg-blog h1 {
  position: relative;
  text-align: center;
  margin: 0 auto;
  color: #2F2F2F;
  text-transform: uppercase;  
}

#pg-blog .intro-blog {
  position: relative;
  background: #d1e3cc;
  padding: 1rem;
  font-style: italic;
  margin-bottom: 2rem;
  border-radius: 0 20px 0 20px;
}
#pg-blog p {margin: 1rem 0 0 0;}
#pg-blog h2 {
    position: relative;
	font-size:1.1rem;
    margin-left: 2rem;
    left: -0.7rem;
    margin-bottom: 2rem;
    margin-top: 2rem;
}
#pg-blog h2::before {
    content: '\25FD';
    position: relative;
    margin-left: -2rem;
}
p.intro-blog::first-letter {
  font-size: 3rem;
  font-weight: bold;
  color: #00c3ff;
  float: left;
  line-height: 1;
  margin-right: 6px;
}

#pg-blog .marcadores {
  width: 77vw;
  display: inline-block;
  margin: 0 auto;
  left: 2rem;
}
.marcadores li::before {
  content: '\2713';
  font-weight: bold;
  color: #22F1AA;
  font-size: 1.1rem;
  margin-right: 0.4rem;
}

@media (max-width: 480px) {
	
	.fotos-blog img {
	  width: 80%;
  height: auto;
  margin: 2rem auto;
  display: block;

	}
	
  p.intro-blog::first-letter {
    float: none;
    font-size: 2.2rem;
  }
}

.sombreado {
  position: relative;
  height: 20px;
  width: 60%;
  border: 0;
  margin: 1.35em auto;
  background-position: 50%;
  box-sizing: border-box;
  background-image: radial-gradient( farthest-side at 50% -50%, hsla(0, 0%, 0%, 0.5), hsla(0, 0%, 0%, 0));
}

#blog-home .post {
    width: 90%;
	min-height: unset;
	margin-bottom: 2rem;
}
.posts {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.post {
  display: flex;
  flex-direction: column;
  background: #fff;
}
.post picture img {
  width: 100%;
  height: auto;
  display: block;
}

.post-content {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: .75rem;
  height: 100%;
}

.meta {
  font-size: .85rem;
  color: #004cff;
  display: flex;
  justify-content: left;
  gap: 1rem;
}

.btn-outline {
  margin-top: auto;
  padding: .75rem;
  text-align: center;
  border: 2px solid #000;
  text-decoration: none;
  font-weight: 600;
  transition: border 0.3s ease;
}

.btn-outline:hover {border: 2px solid #1fc8c8; color: #1fc8c8; }

.post-full {
  width: 100%;
}

.post-half {
  width: 100%;
}

.pagination {
  display: flex;
  justify-content: center;
  gap: .5rem;
  margin: 2rem 0;
}

.pagination button {
  padding: .5rem .75rem;
  border: 1px solid #000;
  background: none;
  color: #000;
  transition: border 0.3s ease;
}

.pagination .active {
  background: #000;
  color: #fff;
  cursor: unset;
}
.pagination button:hover {border: 1px solid #1fc8c8;}

@media (min-width: 600px) {
#blog-home .post-half {
    width: calc(50% - .75rem);
	display: flex;
  }
}

@media (min-width: 1024px) {
  #blog-home {
    max-width: 1200px;
    margin: auto;
  }
}


/* CONTATO */

.limiteContato {position: relative;}

.limiteContato form {position: relative;}

.limiteContato textarea, 
.limiteContato input {
	padding: 0.3rem;
	border: 0;
	font-size: 1.1rem;
	color: #184a05;
	background: #e4f9d8;  
}

.limiteContato textarea {
	position: relative;	
	margin-bottom: 1rem;
}

.limiteContato label {
	float: left;
	font-size:1.1rem;
	color:#333;
	margin-right: 1rem;
}


.apresentacao {
	position: relative;
	z-index: 9;
	margin-bottom: 4rem;
}

.mapa {
  position: relative;	
  display: block;
  width: 36px;
  height: 36px;
  text-indent: -9999px;
  cursor: pointer;
  background: url(../imagens/ico-map.svg) no-repeat;
  background-position: right;  
  background-size: contain;  
}	

section.apresentacao .card {width: 80%;}
section.apresentacao .column {margin-bottom: 4rem;}
	
hr {
	border: 0;
	margin: 1rem auto 4rem auto;
	max-width: 50%;
	background-position: 50%;
	box-sizing: border-box;
	border-width: 0 0 0.5rem;
	color: #95000e;
	border-image: linear-gradient(90deg, rgba(0,179,251, 0), #00B3FB 50%, rgba(34,241,170, 0) 100%) 0 0 100%;
	border-style: solid;  
}

hr.divisoria {
  border: 0;
  height: 1px;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
}


/* HERO HOME - família */

.overlay-hero,
.hero-video__media {pointer-events: none;}
.hero-video {position: relative;}

.apresentacao-desktop {
    display: block;
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.chamada-trigger {
    pointer-events: auto;
    position: absolute;
	top: 50%;
    right: 0;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.45);
    color: #fff;
    border: none;
    border-radius: 999px;
    padding: 0.8rem 1.6rem;
    font-size: 1rem;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    cursor: pointer;
    opacity: 0;
    animation: fadeInUp 1s ease forwards;
    animation-delay: 1.8s;
	width: 15rem;
  }
  .chamada-trigger.is-visible {opacity: 1;}
  
  .icone-mao {
  height: auto;
  transform: rotate(-90deg) scale(1.4);
  transform-origin: center;
  flex-shrink: 0;
	}
	
	
.popup-hero {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,0.75);
    text-align: center;
    padding: 2rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease, visibility 0.6s ease;
    pointer-events: auto;
  }

  .popup-hero.ativo {
    opacity: 1;
    visibility: visible;
  }

  .popup-hero h2 {
    color: #fff;
    font-size: 2rem;
    margin-bottom: 1rem;
  }

  .popup-hero p {
    color: #eee;
    max-width: 520px;
    line-height: 1.6;
    margin-bottom: 1.8rem;
  }

  .btn-popup {
    background: #fff;
    color: #003366;
    padding: 0.9rem 2rem;
    border-radius: 999px;
    font-weight: 600;
    text-decoration: none;
  }
  .btn-popup-mobile {
	  position:relative;
	  margin: 0 auto;
	  width:10rem;
	  display:block;
    background: #00a238;
    color: #fff;
    padding: 0.9rem 2rem;
    border-radius: 999px;
    font-weight: 600;
    text-decoration: none;
	pointer-events: auto;
	transition: background-color 0.35s ease;
  }  
  
  .btn-popup-mobile:hover {background: #00e64f; }

  .popup-fechar {
    position: absolute;
    top: 2rem;
    right: 5rem;
    background: none;
    border: none;
    font-size: 2rem;
    color: #fff;
    cursor: pointer;
  }
  
  .popup-fechar:hover {background: red;}  


.hero-seta {
	position: absolute;
	left:50%;
	margin-left:-20px;
	bottom: 2px;
	width: 20px;
	height: 20px;
	animation: bounce 1600ms infinite cubic-bezier(0.445, 0.05, 0.55, 0.95);
	cursor: pointer;
	display:none;
}

.hero-seta .seta {
  height: 6px;
  background: #0a533f;
  transform: rotate(45deg);
  transform-origin: 0% 0%;
  border-radius: 5px;
}
.hero-seta .seta:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 100%;
  border-radius: 5px;
  background: #0a533f;
  transform: rotate(-90deg);
  transform-origin: 0% 100%;
}

@keyframes bounce {
50% {
    transform: translateY(-15px);
  }
}

.hero-video {
  position: relative;
  min-height: 60vh;
  height: 60vh;
  overflow: hidden;
}

.hero-video__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ======================================
   LOGO – MOBILE (RESUMIDO)
====================================== */

.logo-mobile {
  position: absolute;
  top: 0.8rem;
  left: 0.8rem;
  width: clamp(130px, 30vw, 160px);
  z-index: 3;
}

/* Logo completo escondido no mobile */
.hero-logo,
.hero-logo__bg,
.hero-logo__img {display: none;}

/* ======================================
   HERO – CONTEÚDO SOBRE O VÍDEO
====================================== */

.hero-conteudo {
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding: 2rem 1.5rem;
  text-align: center;
  color: #fff;
  background: linear-gradient(to top, rgba(0,0,0,.6), rgba(0,0,0,0));
}

/* ======================================
   SEÇÃO APRESENTAÇÃO (ABAIXO DO HERO)
====================================== */

.secao-apresentacao {
  background: #fff;
  padding: 2rem 1.2rem 1rem 1.2rem;
}

.conteudo-apresentacao {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  max-width: 1200px;
  margin: 0 auto 3rem auto;
  box-sizing: border-box;
}

/* TEXTO PRINCIPAL */

.chamada-principal {
  text-align: center;
}

.chamada-principal h1 {
  font-size: clamp(1.6rem, 5vw, 2.2rem);
  line-height: 1.2;
  color: #003366;
  margin-bottom: 1rem;
}

.chamada-principal p {
  font-size: 1rem;
  line-height: 1.6;
  color: #333;
  margin-bottom: 1.5rem;
  text-align: justify;
  text-align-last: center;
}

.botao-principal {
  display: inline-block;
  background: #24a400;
  color: #fff;
  padding: 0.9rem 1.8rem;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
}
.botao-principal:hover {background: #30d900;}

/* ======================================
   E-BOOKS
====================================== */

.destaque-ebooks {
  padding: 1.5rem;
  border-radius: 16px;
  max-width: 520px;
  margin: 0 auto;
}

.destaque-ebooks h2 {
  font-size: 1.2rem;
  margin-bottom: 1rem;
  color: #003366;
  top: 0;
  text-align: center;
}

.destaque-ebooks img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-bottom: 1rem;
}

.destaque-ebooks p {
  font-size: 1rem;
  line-height: 1.3rem;
  text-align: center;
  margin-bottom: 1rem;
}

.link-ebooks {
  font-weight: 600;
  color: #006064;
  text-decoration: none;
  display: block;
  text-align: center;
}

@media (min-width: 412px) and (max-width: 428px) {
.apresentacao-desktop {display: none;}
.chamada-principal h1 {margin-bottom: 1.8rem;}
.chamada-principal p {margin-bottom: 1.8rem;}
.botao-principal {margin-bottom: 2rem;}
.logo-mobile {
  top: 1.3rem;
  left: 1.3rem;
  width: clamp(140px, 30vw, 160px);
}

}
/* ======================================
   TABLETS ≥ 600px
====================================== */

@media (min-width: 600px) {
	
.apresentacao-desktop {display: none;}

.header {box-shadow: 1px 1px 5px rgba(0,0,0,0.5);}	
	
.logo-mobile {display: none;}

.hero-logo {
    display: block;
    position: absolute;
    top: 0;
    left: 2rem;
    width: clamp(136px, 19vw, 260px);
    height: 200px;
    z-index: 3;
  }

  .hero-logo__bg {
    display: block;
    position: absolute;
    inset: 0;
    background: linear-gradient(
      to bottom,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,1) 65%,
      rgba(255,255,255,.6) 80%,
      rgba(255,255,255,0) 100%
    );
    transform-origin: top;
    animation: bgReveal 1.2s ease-out forwards;	
  }

  .hero-logo__img {
    display: block;
    position: relative;
    width: 79%;
    opacity: 0;
    animation: logoFade 1s ease-out forwards;
    animation-delay: 0s;
    animation-delay: .8s;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,.25));
    margin: 1.4rem auto 0 auto;
  }

  .hero-video {min-height: 70vh;}

  .secao-apresentacao {padding: 2rem 2rem;}
 
  .destaque-ebooks img {
  width: 68%;
  margin: 0 auto 1rem auto;
}
  
  
}

@media (min-width: 800px) {
	
.hero-logo {
    top: 3rem;
    left: 1.2rem;
    width: clamp(100px, 20vw, 260px);
    height: 251px;
}
.hero-logo__img {
    width: 77%;
    margin: 1.5rem auto 0 auto;
}
  
}	

/* ======================================
   DESKTOP ≥ 1024px
====================================== */

@media (min-width: 1024px) {

  .hero-video {min-height: 85vh;}

  .conteudo-apresentacao {
    flex-direction: row;
    align-items: flex-start;
  }

  .chamada-principal {
    max-width: 520px;
    text-align: left;
  }

  .chamada-principal p {
    text-align: justify;
    text-align-last: auto;
  }

  .destaque-ebooks {
    margin-top: clamp(4rem, 10vw, 8rem);
  }
}

/* ======================================
   ANIMAÇÕES
====================================== */

@keyframes bgReveal {
  from {transform: scaleY(0);}
  to {transform: scaleY(1);}
}

@keyframes logoFade {
  from {opacity: 0; transform: translateY(-10px);}
  to {opacity: 1; transform: translateY(0);}
}

@media (prefers-reduced-motion: reduce) {
  * {animation: none !important;}
}





/* CARTAO Hover */

#familia div {position:relative;}

.fotoHover {
  position: relative;
  overflow: hidden;
  height: auto;
  color: #fff;
  text-align: center;
  display: inline-block;
}
.fotoHover * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
}
.fotoHover img {
  opacity: 1;
  margin-left:-1.4rem;
}
.fotoHover:after,
.fotoHover:before,
.fotoHover figcaption:after,
.fotoHover figcaption:before {
  background: #0a0a0a;
  width: 25%;
  position: absolute;
  content: '';
  opacity: 0;
  -webkit-transition: all 0.3s steps(4);
  transition: all 0.3s steps(4);
  z-index: 1;
  top: 100%;
  bottom: 0;
}
.fotoHover:before {
  left: 0;
 /* -webkit-transition-delay: 0;
  transition-delay: 0; */
}
.fotoHover:after {
  left: 25%;
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
.fotoHover figcaption:before {
  left: 50%;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
  z-index: -1;
}
.fotoHover figcaption:after {
  left: 75%;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
  z-index: -1;
}
.fotoHover figcaption {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -1px;
  right: 0;
  z-index: 2;
  padding: 30px;
}

.fotoHover h2,
.fotoHover p,
.fotoHover .icons {
  margin: 0;
  width: 100%;
  opacity: 0;
}
.fotoHover h2 {
  font-weight: 500;
  text-transform: uppercase;
}
.fotoHover p {
  font-weight: 300;
  margin-top: 2rem;
}

.fotoHover:hover:after,
.fotoHover.hover:after,
.fotoHover:hover:before,
.fotoHover.hover:before,
.fotoHover:hover figcaption:after,
.fotoHover.hover figcaption:after,
.fotoHover:hover figcaption:before,
.fotoHover.hover figcaption:before {
  top: 0;
  opacity: 0.8;
}
.fotoHover:hover figcaption h2,
.fotoHover.hover figcaption h2,
.fotoHover:hover figcaption p,
.fotoHover.hover figcaption p,
.fotoHover:hover figcaption .icons,
.fotoHover.hover figcaption .icons {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
.fotoHover:hover figcaption h2,
.fotoHover.hover figcaption h2,
.fotoHover:hover figcaption .icons,
.fotoHover.hover figcaption .icons {
  opacity: 1;
}
.fotoHover:hover figcaption p,
.fotoHover.hover figcaption p {
  opacity: 0.7;
}

/* ARTIGOS INTERNOS */

#interna article {
  position: relative;
  margin: 0 auto;
  min-height: 50rem;
}

#interna article h3 {
	border-left: 1rem solid #ffcc33;
	padding-left: 2rem;
	
}


/* LINHA COLORIDA NO RODAPÉ */
 
footer {
	width: 100vw;
	margin-top: auto;
	padding:2rem 0 0 0;
	background: rgb(204,204,204);
	background: linear-gradient(0deg, rgba(204,204,204,1) 35%, rgba(255,255,255,1) 100%); 
}

.logo-footer {
	width: 40%;
  margin: 0 auto;
    margin-bottom: 0px;
  display: block;
  margin-bottom: 4rem;
}


/* ONDAS NO FOOTER */

.flex { /*Flexbox for containers*/
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.waves {
  position: relative;
  display: block;
  width: 100%;
  height: 15vh;
  min-height: 100px;
  max-height: 150px;
  margin-bottom: -7px; /* Safari fix */
}
.base-amarela {
  width: 100%;
  height: 3rem;
background-color: #00b3fb;
}

.content {
  position:relative;
  height:20vh;
  text-align:center;
  background-color: #00B3FB;
}

/* Animation */

.parallax > use {
  animation: move-forever 25s cubic-bezier(.55,.5,.45,.5)     infinite;
}
.parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 7s;
}
.parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
}
.parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 13s;
}
.parallax > use:nth-child(4) {
  animation-delay: -5s;
  animation-duration: 20s;
}
@keyframes move-forever {
  0% {
   transform: translate3d(-90px,0,0);
  }
  100% { 
    transform: translate3d(85px,0,0);
  }
}
/*Shrinking for mobile*/
@media (max-width: 768px) {
  .waves {
    height:40px;
    min-height:40px;
  }
  .content {
    height:30vh;
  }

}

.container-img-txt {
	position:relative;
	margin: 2rem auto;
}

.foto {
	float:left;	
	border-radius: 50%;
	shape-outside: circle(50% at 50% 50%);
}

.container-img-txt p {padding: 0.5rem;}

.paragrafo {
  position: relative;
  margin: 0 auto 4rem auto !important;
  display: block;
}

.txt-duvidas {text-align: center;}

address {text-align:center;}

.contatoRodape {text-align:center; margin-bottom: 3rem;}

.contatoRodape img {
	position:relative;
	margin:0 auto;
	margin-right: 0.5rem;
}

.contatoRodape img:hover {box-shadow:1px 1px 8px #fbbc04;}

/* TRATAMENTO HOME */

h3 {
  font-size: 1.5em;
  font-weight: 500;
}

p {
	font-size: 1rem;
	line-height: 1.4rem;
	font-weight: 300;
	color: #333;
}

a {
  text-decoration: none;
  color: inherit;
}

/* TRATAMENTOS FOTOS */

.Engloba {
  display: flex;
  align-items: stretch;
  padding: 24px;
  flex-wrap: wrap;
}

.limiteIndividual {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  position: relative;
  padding: 24px;
  background: #d7e6e0;
    margin-bottom: 2rem;

}

.conteudoTratamento {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 36px;
}

.imgTratamento {
  width: 100%;
  object-fit: cover;
  object-position: 50% 20%;
}

.imgTratamento {
  width: 100%;
  object-fit: contain;
  object-position: center top;
  height: auto;
}

.limiteTitulo {
  text-align: center;
  color: #0e5e56;
}

.button {
  display: block;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-top: auto;
  padding: 16px;
  color: #000;
  background: transparent;
  box-shadow: 0px 0px 0px 1px black inset;
  transition:
    box-shadow 0.3s ease,
    color 0.3s ease;
}

.button:hover { box-shadow: 0px 0px 0px 1px #00B3FB inset; color:#00B3FB; }

.description {text-align:center;}

/* ACORDEON DUVIDAS */

*:focus {
  outline: none;
}

#duvidas {
  width: 90%;
  max-width: 600px;
  margin: 5rem auto;
}

details > div {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition:
    max-height 0.45s ease,
    opacity 0.8s ease;
}

details[open] > div {
  max-height: 1000px;
  opacity: 1;
}

details div {
  border-left: 2px solid #000;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  padding: 1.5em;
  background: #fff;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.3rem;
}

details div > * + * {
  margin-top: 1.5em;
}

details + details {
  margin-top: .5rem;
}

summary {
  list-style: none;
  padding: .75em 1em;
  cursor: pointer;
  position: relative;
  padding-left: calc(1.75rem + .75rem + .75rem);
}

summary::-webkit-details-marker {
  display: none;
}

summary:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: .75rem;
  content: "▲";
  color: #62bca6;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

details[open] summary {
  background-color: #62bca6;
}

details[open] summary:before {
  content: "▼";
  color: #fff;
}

summary:hover {
  background-color: #e6e6d7;
}

#duvidas a {
  color: inherit;
  font-weight: 500;
  text-decoration: none;
  box-shadow: 0 1px 0 0;
}

#duvidas a:hover {
  box-shadow: 0 3px 0 0;
}

.container-tratamentos {margin-top:4rem; padding: 1rem;}

#apresenta-1 p,
#apresenta p {width:96vw; margin: 0 auto;}

#apresenta-1 .container-img-txt {
  margin: 2rem auto 4.6rem auto;
}

.foto {
	width: 50%;
	height: auto;
}

#tratamentos header::after {
	width: 2rem;
	height: 2rem;
	margin: -3rem 0 0 0;
}
#tratamentos .header h1 {margin: 0 0 1.1rem 0.8rem;}
#tratamentos .number-1,
#tratamentos .number-3 {
	left: 90%;
    transform: translateX(-90%);
	margin-bottom: -1rem; 
	font-size:6rem;
}
#tratamentos .number-3 {margin-bottom:0 !important;}
#tratamentos .number-4 {margin-bottom: 0.2rem !important;}
#tratamentos .number-2,
#tratamentos .number-4 {
	right: 97%;
    transform: translateX(97%);
    font-size: 6rem;
	margin-bottom: -0.7rem;
}
  
.legenda-1, .legenda-3 {width: 78vw; text-align: left; margin: 1rem 0 2.5rem 0.3rem;}  
.legenda-2, .legenda-4 {width: 78vw; text-align: right; margin: 1rem -2.2rem 2.5rem 0;}

.legenda-4 {margin-left: 2.8rem !important;}

/* HOME E-BOOKS */

.ebook-card {
  border: 1px solid #ccc;
  border-radius: 1rem;
  width: 80%;
  margin: 0 auto 2rem auto;
  padding: 0.8rem;
}
.ebook-card h2 {
	color: green;
	margin-bottom: 2rem;
	text-align: center;
	text-transform: uppercase;
}
.btn.btn-secundario,
.btn.btn-primario {
	background: green;
	padding: 0.3rem 0.6rem;
	text-align: center;
	color: #fff;
	display: inline-block;
	width: auto;
	border-radius: 0.5rem;
	transition: background 0.3s ease;
}
.btn.btn-primario {margin-right: 0.5rem;}
.btn.btn-secundario {background: #4c4ce1;}
.btn.btn-primario:hover {background: #33b933;}
.btn.btn-secundario:hover {background: #3333e3;}
.ebook-acoes {
  background: #e7f0a8;
  padding: 0.5rem;
  text-align: center;
}
.ebook-card p {margin-bottom: 2rem;}
.ebook-leitor {
  width: 80%;
  margin: 0 auto 4rem auto;
  overflow: hidden;
}

@media screen and (max-width: 411px) {
	
.main-home-blog h2 {font-size: 1rem;}	
.main-home-blog {margin-top: 0;}	
	
.foto {width: 55%;}
	
.secao-apresentacao {padding: 1rem 1.2rem 1rem 1.2rem;}
.chamada-principal p {line-height: 1.3rem;}

.apresentacao-desktop {display: none;}	
	
#erro {margin:-13rem auto 9rem auto;}	

#erro h1 {text-align:center;}
	
#erro article img {
	position:relative;
	display:block;
	width:64%;
	height:auto;
	margin: 1rem auto 1rem auto;
}			

.logo img {
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
}

.float{display:none;}

.bg-header {
	position: relative;
	top: -4.7rem;
}

.detalhe-topo {
	position: relative;
	top: 7.3rem;	
}

.header.sticky .menu-icon, .header .menu-icon {
	float: right;
	position: relative;
	top:20px;
	right:0;
	width: 3rem;
    height: 3rem
}
.header .menu-btn,	
.header.sticky .menu-btn {
	position:absolute;	
	top: 1.5rem;
	right: 1.3rem;	
	width:3rem;
	height:3rem;
}

.header-alternado .logo img {
	position: relative;	
	top: 5rem;
}	
.header-alternado.sticky .logo img {
    position: relative;	
	top: 0.5rem;	
}
.header-alternado .menu-icon {top: -7rem;}
.header-alternado {margin-bottom: 12rem;}
.header-alternado.sticky {box-shadow: none !important;}	
.header-alternado .menuPrincipal {
	position: relative;	
	height: 2.5rem;
	top: -0.4rem;	
}
.header-alternado.sticky .menuPrincipal {background:transparent;}

.contatoTopo {display:none;}

.menu-icon {top:3rem;}

#apresenta p,	
#duvidas p {
	width: 90vw;
	font-size: 1rem;
    line-height: 1.3rem;
	margin-top: 0 !important;	
}

#duvidas p {width: auto;}

#tratamentos {margin: 0 0px 5rem 0;}
#interna #tratamentos {margin: 0 0px 5rem 0;}

#accordion {margin: 4rem auto 8rem auto;}	

summary {font-size: 1.1rem;}

#accordion p {
	width:inherit;
	line-height: 1.5;
	font-size: 1.1rem;	
}

#apresenta-1 p {
	font-size: 1rem;
    line-height: 1.3rem;
}

summary:before {font-size:1.5rem}

#interna article {width:90vw;}

#duvidas > p {text-align:center; font-size: 1rem; line-height: 1.3rem;}

.button {font-size:1.1rem;}

main h2 {font-size:1.1rem}

.mapa {margin:1rem auto 2rem auto;}	
	
.limiteTitulo span {
	font-size: 1.3rem;
    font-weight: 500;	
}

.envolve {margin: 2rem auto 0 auto !important;}

.fotoHover {
  margin: 10px;
  width: 86%;
}
.fotoHover h2 {font-size:1.2rem;}
.fotoHover p {
	color:#fff;
	font-size:1rem;
}
.fotoHover h2 {
  font-weight: 500;
  text-transform: uppercase;
}
.fotoHover p {
  font-weight: 300;
  margin-top: 1rem;
}
.fotoHover img {width:98%; height:auto;}

#familia div {position:relative;}
#familia figcaption {padding: 2rem 0.5rem 0.5rem 0.5rem !important;}
#familia figcaption p span {line-height: 1.2rem;}
#familia {margin: 5.5rem auto 5rem auto;}
#interna #familia {margin: 0 auto 5rem auto;}
#interna .apresentacao {margin-bottom:0;}
#familia p {
line-height: 1.3rem !important;
font-size: 1rem !important;
}
#familia li {
	width: 80vw;
	height: auto;
}

#contato-limite {
	position: relative;
		margin-bottom: 6rem;
}

.contatoRodape img {
	width: 10%;
	height: 10%;
}  

.description {
  text-align: center;
  font-size: 1.1rem;
}

.limiteContato {margin: 3rem auto 3rem auto;}

.limiteContato form {
	position: relative;
	margin: 2rem auto;
overflow: hidden;
    width: 16rem;	
}

.limiteContato textarea, 
.limiteContato input {
	padding: 0.3rem;
	border: 0;
	font-size: 1.1rem;
	color: #184a05;
	background: #e4f9d8;  
}

.limiteContato textarea {
	position: relative;	
	margin-bottom: 1rem;
}

.limiteContato #name {width:16rem; margin-bottom:0.8rem;}
.limiteContato #phone {
width: 16rem;
margin:0 0 0 -0.55rem;
}
.limiteContato #email {width: 16rem;}
.limiteContato #message {width: 20rem;  height: 10rem;}

.limiteContato label {
	float: left;
	font-size:1.1rem;
	color:#333;
	margin-right: 1rem;
}

footer .whatsapp {
	font-size: 1rem;
    line-height: 1.3rem;	
	margin:1rem auto;
	text-align:center;
	display:block;
}

#parceiros {top:2rem;}
#parceiros picture {width: 90%;}
#parceiros > p {width: 72.5vw;}
#parceiros .box-resumo {width:76.5vw}


.whats-float {
	position: relative;
	top: -20rem;	
	z-index: 0;	
}
.whats-float a span {
	font-size: 1.3rem;
	padding: 6px 0 10px 0;	
}

.Engloba {width: 87vw;}

.txt-duvidas {
  width: 80%;
  margin: 0 auto;
}

.imgBlog-bg-abaixo {
  width: 50%;
  height: auto;
  position: relative;
  top: 3rem;
  left: -2rem;
}

.imgBlog-centro-abaixo {
	width: 50%;
	height: auto;
	margin: 2rem auto;
	display: block;
}

#introducao-e-books,
.ebooks-header {
  width: 85%;
  margin: 0 auto 4rem auto;

}
#introducao-e-books p {
  margin-bottom: 1.5rem;
}

} /* FIM MOBILE MENORES */


@media screen and (min-width: 375px) and (max-width: 375px) {
	
#tratamentos {margin: 0 0px 5rem 0;}
#interna #tratamentos { margin: 2rem 0px 5rem 0;}
.whats-float {right: -5.4rem;}

.secao-apresentacao {padding: 2rem 1.2rem 1rem 1.2rem;}

}

@media screen and (min-width: 390px) and (max-width: 390px) {
	
.secao-apresentacao {padding: 2rem 1.2rem 5rem 1.2rem;}
.conteudo-apresentacao {margin-bottom:0;}	
	
.fotoHover figcaption::before {left: 10.51rem;}  /* estes ajustes aqui abaixo é para efeito do mouse hover sobre as fotos de família, durante o processo de animação uma fresta havia */
#erro {margin:-13rem auto 0 auto;}	

#erro h1 {text-align:center;}
	
#erro article img {
	position:relative;
	display:block;
	width:64%;
	height:auto;
	margin: 1rem auto 1rem auto;
}

#tratamentos {margin: 0 0px 5rem 0;}
#interna #tratamentos {margin:2rem 0px 5rem 0;}
.whats-float {right: -5.4rem;}

}

@media screen and (min-width: 393px) and (max-width: 393px) {
	
#apresenta-1 {
    position: relative;
    top: 12rem;
}
	
#erro {margin:-13rem auto 9rem auto;}	

#erro h1 {text-align:center;}
	
#erro article img {
	position:relative;
	display:block;
	width:64%;
	height:auto;
	margin: 1rem auto 1rem auto;
}	
.fotoHover figcaption::before {left: 10.55rem;}
#parceiros figcaption {width: 235px;}
.whats-float {right: -6.4rem;}
#apresenta {
    position: relative;
    top: 10rem;
}

#tratamentos {margin: 13rem 0px 5rem 0;}
#interna #tratamentos {margin:2rem 0px 5rem 0;}

}


/* FIM MOBILE MENORES, OUTROS BREAKPOINTS */

	
@media screen and (min-width: 412px) and (max-width: 601px) {
	
#erro {margin:0 auto 2rem auto;}	

#erro h1 {text-align:center;}
	
#erro article img {
	position:relative;
	display:block;
	width:64%;
	height:auto;
	margin: 1rem auto 1rem auto;
}	

.main-home-blog {margin-top: 7rem;}

main {position: relative;}

.ebooks-container {
  position: relative;
  top: 8rem;
  width: 90%;
  margin: 0 auto;

}

#introducao-e-books {margin-bottom: 4rem;}
	
.header-alternado .logo img {
	position: relative;	
	top: 5rem;
	width:8rem;
	height: auto;
}	
.header-alternado.sticky .logo img {
    position: relative;	
	top: 0.5rem;	
}
.header.sticky .logo img {width:9rem;}
.header-alternado {height:10rem;}	
.bg-header {margin-top: -1rem;}
	
.header.sticky .menu-btn:checked ~ .menu {
	top: -0.6rem;
	transition: top 0.3s ease;
}		
.header.sticky .menu-icon,	
.header .menu-icon {
	position: absolute;
    top: 1rem;
    right: 0.5rem;
    display: block;
    width: 3rem;
    height: 3rem;
}
.header .menu-btn,	
.header.sticky .menu-btn {
	position:absolute;	
	top: 1.5rem;
	right: 1.3rem;	
	width:3rem;
	height:3rem;
}	
.header-alternado {height: 153px;}
.header-alternado.sticky {box-shadow: none !important;}	
.header-alternado .menuPrincipal {
	position: relative;	
	height: 2.5rem;
	top: -0.4rem;	
}
.header-alternado.sticky .menuPrincipal {background:transparent;}
	
.envolve {margin: 2rem auto 0 auto !important;}


.fotoHover h2 {font-size:1.2rem;}
.fotoHover p {
	color:#fff;
	font-size:1rem;
}
.fotoHover h2 {
  font-weight: 500;
  text-transform: uppercase;
}
.fotoHover p {
  font-weight: 300;
  margin-top: 1rem;
}

.float{display:none;}
	
#apresenta-1 { margin-top: 8rem;}

#interna + footer {margin-top:15rem;}
	
.contatoTopo {display:none;}

.logo-grande,
.contatoTopo div {display:none;}

main h2 {font-size:1.35rem;}

#contato-limite {
	position: relative;
	top: 6rem;
	width: 90%;
    overflow: hidden;
	margin: 0 auto;
}

.limiteContato {width: 100% !important;}

.limiteContato #name {width:15rem; margin-bottom:0.8rem;}
.limiteContato #phone {
width: 15rem;
margin:0 0 0 -0.55rem;
}
.limiteContato #email {width: 15rem;}
.limiteContato #message {width: 20rem;  height: 10rem;}

.limiteContato form {
  position: relative;
  width: 90vw;
  margin: 2rem auto;
}

.aviso {
	position: relative;	
	font-size: 1rem;
	margin: 2rem 0 0 1.4rem;	
}

#tratamentos {
	position: relative;
	top: 2rem;	
}
#interna #tratamentos {
	position: relative;
	top: 7rem;	
}

#duvidas {
top: 5rem;
position: relative;
}

#accordion {
    position: relative;
    width: 81vw;
    margin: 3rem auto 4rem auto;
}

summary {font-size: 1.1rem;}

.button {font-size:1.1rem;}

.container-tratamentos {margin-top:3rem; padding: 1rem;}

#duvidas > p {
	width: 90vw;
	font-size: 1.1rem;
	line-height: 1.4rem;
	text-align:center;	
	margin-top: 1rem !important;	
}	

.Engloba {width: 89vw;}
#tratamentos header::after {
	width: 2rem;
	height: 2rem;
	margin: -2.9rem 0 0 0;
}	
#tratamentos figure {
	flex-direction: row;
	justify-content: space-between;
}
#tratamentos .header h1 {margin: 0 0 1.1rem 0.8rem;}
#tratamentos .number-1, #tratamentos .number-3 {
    font-size: 6rem;
    margin: 0 0.5rem -0.5rem 0;
}
#tratamentos .number-2, #tratamentos .number-4 {
    font-size: 6rem;
    margin: 0 0 -0.5rem 0.5rem;
	right: inherit;	
}

.imgTratamento { height: 25rem;}
.titTratamento {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: start;
	justify-content: center;
}

.legenda-1, .legenda-3 {
	margin: 1.5rem 0 2.5rem 0.3rem;
	width: 84vw;
	text-align: left;
}
.legenda-2, .legenda-4 {
	text-align: right;
	width: 78vw;
	margin: 1.5rem -2.9rem 2.5rem 0;
}
.legenda-4 {margin:1.5rem 0 2.5rem 13% !important;}
	
#apresenta-1 p {
    line-height: 1.4rem;
    font-size: 1.1rem;
}

#apresenta p {
	width:89vw; 
	margin: 0 auto;
	font-size: 1.1rem;
	line-height: 1.4rem;	
}

#accordion p {
	width:inherit;
	line-height: 1.5;
	font-size: 1.1rem;	
}

.foto {
	width: 44%;
	height: auto;
}

.contatoRodape img {
	width: 10%;
	height: 10%;
} 

#familia div {position:relative;}
#familia {margin-bottom: 7rem;}
#familia p {
	margin: 1rem 0 0 0;
	line-height: 1.3rem;
	font-size: 1.1rem;
}
#familia li {
	width: 70vw;
	height: auto;
}


.paragrafo {
  width: 90vw;
  font-size: 1.1rem !important;
  line-height: 1.4rem !important;
}

.mapa {margin: 2rem auto;}

.description {
  text-align: center;
  font-size: 1.1rem;
}

.espaco {margin-top: 0;}
.espaco-1 {margin-top: -0.9rem;}

footer .whatsapp {
	font-size: 1.4rem;
	line-height: 1.8rem;	
	margin:1rem auto;
	text-align:center;
	display:block;
}

#parceiros {top:2rem;}
#parceiros picture {width: 90%;}
#parceiros > p {width: 72.5vw;}
#parceiros .box-resumo {width:76.5vw}


#familia {
	position: relative;
	top: 5rem;
}

#interna #familia {top:2rem;}

footer {margin-top: 15rem;}

.whats-float {
    position: relative;
    transform: translate(218px,0);
	right: -7.4rem;	
    bottom: 26rem;
}

.conteudo-apresentacao {margin: 0.5rem auto 3rem auto;}
.chamada-principal {margin-bottom: 2rem;}
.chamada-principal p {margin-bottom: 2.3rem;}
.destaque-ebooks {margin-bottom: 1rem;}

.limiteTitulo span {font-size: 1.2rem;}

.detalhe-topo {
  margin-top: 3rem;
  position: relative;
  display: block;
}

#familia img {
  margin: auto 3px auto 4px;
  width: 300px;
  height: auto;
}

#pg-blog {position: relative; width: 90%; margin: 8rem auto 0 auto;}

.logo-footer {width: 34%;}

#blog-home {margin: 4rem auto 0 auto;}

.imgBlog-bg-abaixo {
    width: 50%;
    height: auto;
    position: relative;
    top: 3rem;
    left: -2rem;
}

.fotoHover figcaption {padding: 0 0.5rem 0.5rem 0.5rem;}

#apresenta-1 p, #apresenta p {
  width: 100%;
  margin: 0 auto;
}
#apresenta-1, #apresenta {
    width: 80%;
    margin: 8rem auto 0 auto;
}
#apresenta {margin-top:0;}

.imgBlog-centro-abaixo {
  width: 50%;
  height: auto;
  margin: 2rem auto 0 auto;
  display: block;
}

} /* FIM DO MOBILE MÉDIO */


@media screen and (min-width: 601px) and (max-width: 601px) {
	
#apresenta {
    position: relative;
    margin-top: 5rem;
}	

.fotoHover p {
    top: 2rem;
    font-size: 1.1rem !important;
}	

#interna {margin-top:0 !important;}
	
.whats-float {display: block;}	
	
.header-alternado .logo img {
    position: relative;
    top: 6rem;
}
	
.logo img {
    width: 10rem;
    height: auto;
    margin: 0.5rem 0 0 1rem;
}

.header.sticky .menu-icon, .header .menu-icon {
	top: 1rem;
    right: 1rem;
}

.fotoHover {
    margin: 10px;
    width: 56%;
}
#familia img {
    width: 59vw;
    height: auto;
}

#familia p {
    line-height: 1.5rem;
    font-size: 1.2rem;
}

.imgTratamento {height: 43rem;}

#accordion {
    position: relative;
    width: 85vw;
    margin: 3rem auto 4rem auto;
}

.limiteContato form {
    position: relative;
    width: 55vw;
    margin: 2rem auto;
}

.aviso {left: 6.8rem;}

#tratamentos {position: relative; top: 3rem;}
#interna #tratamentos {position: relative; top: 9rem;}
#parceiros {top: 3rem;}
#parceiros figcaption {width: 238px;}
#duvidas {position: relative; top: 5rem;}
#familia {position: relative; top: 4rem;}
#contato-limite {
	position: relative; 
	top: 8rem;
	overflow: hidden;
    margin-bottom: 5rem;	
}

.foto {
    width: 33%;
    height: auto;

}

.whats-float {
    position: relative;
    transform: translate(218px,0);
	right: -18.4rem;	
    bottom: 26rem;
}



} /* FIM DO TABLET 601PX */

@media screen and (min-width: 602px) and (max-width: 767px) {
	
.header-alternado .logo img {
    position: relative;	
    margin: 1.5rem auto 0 auto;
    width: 8rem;
    top: 6rem;
}	
.header-alternado.sticky .logo img {top:1.5rem;}
.header-alternado .menuPrincipal {
	position: relative;	
	top: -1.5rem;
	height: 3rem;	
}
.header-alternado.sticky .menuPrincipal {background: transparent;}
.header-alternado {height: 15rem;}
.bg-header {margin-top: -2rem;}
.header.sticky .menu-icon,	
.header .menu-icon {
	position:absolute;	
	top: 1.5rem;
	right: 1.3rem;	
	display:block;
}

.logo-grande,
.contatoTopo div {display:none;}

.button {font-size:1.1rem;}
	
.logo img {
    width: 9rem;
    height: auto;
    margin: 2rem 0 0 2rem;
}

#apresenta-1 {margin-top: -2rem;}
#apresenta-1 p {
	font-size: 1.1rem;
    line-height: 1.8rem;
}

.limiteIndividual {padding: 1rem; flex-basis: calc(50% - 0.8rem);}
.limiteTitulo {
	position:relative;	
    padding: 0.5rem;
    height: 4.4rem;
    font-size: 1.4rem;
}
.limiteTitulo span {
	top: 11% !important;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}
.imgTratamento {height: 19rem;}
.titTratamento {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: start;
}

#tratamentos .header h1 {margin: 2rem 0 1.1rem 3.9rem;}
#tratamentos header::after {
	width: 2rem;
	height: 2rem;
	margin: -2.9rem 0 0 3.1rem;
}	
#tratamentos .number-1, #tratamentos .number-3 {
	font-size: 9rem;
    margin-bottom: 1rem;
    right: 1rem;	
}
#tratamentos .number-2, #tratamentos .number-4 {
    font-size: 9rem;
    margin: 0 0 -0.5rem -24rem;
	right: inherit;	
}

.legenda-1, .legenda-3 {
	margin: 1.5rem 0 2.5rem 2.6rem;
	width: 86vw;	
}  
.legenda-2, .legenda-4 {
	text-align: right;
	width: 78vw;
	margin: 1.5rem -3rem 2.5rem 0;
} 
.legenda-4 {margin: 1.5rem 0 2.5rem 5.6rem !important;}

.contatoTopo {display:none;}

.foto {
	width: 44%;
	height: auto;
}

main h2 {
  font-size: 1.6rem;
  margin: 6rem auto 3rem auto;
}

hr {
	position: relative;	
	top: -2rem;
}  

#apresenta {margin-top: 1rem;}

#apresenta p,
.paragrafo {
	width: 80vw;
	font-size: 1.1rem;
	line-height: 1.8rem;
}

#duvidas p {
	text-align: center;
    margin-top: 1rem !important;	
}

#apresenta {margin-top: -4rem;}

#apresenta p {
  width: 83vw;
  margin: 0 auto;
  position: relative;
  display: block;
}

#familia div {
    width: 57vw;
    margin: 3rem auto;
}

#familia img {
    width: 55vw;
    height: auto;
}

.fotoHover p {
	font-weight: 300;
	color: #fff;
	font-size: 1.2rem;
	line-height: 1.5rem;
	margin-top: 0;  
}

.contatoRodape img {
    width: 7%;
    height: 7%;
} 

.mapa {margin: 2rem auto;}

.description {
  text-align: center;
  font-size: 1.1rem;
}

footer .whatsapp {
	font-size: 1.4rem;
	line-height: 1.8rem;	
	margin:1rem auto;
	text-align:center;
	display:block;
}
  
}  /* FIM DO TABLET 600 */

@media screen and (min-width: 768px) and (max-width: 1279px) {
	
.bg-header {
  margin-top: 3rem;
  z-index: 99;
}	
	
.chamada-principal {
  width: 76vw;
  margin: 0 auto;
}	
.chamada-principal p,
.chamada-principal h1 {margin-bottom: 2rem;}
.chamada-principal {margin-bottom: 3rem;}
	
.float{display:block;}	
	
.ico-flutuante {
  position: relative;	
  width: 40px;
  height: 40px;
  top: 10px;
}	
	
#erro {margin:-23rem auto 9rem auto;}	

#erro article img {
	position:relative;
	display:block;
	width:44%;
	height:auto;
	margin: 1rem auto 31rem auto;
}	

.header-alternado .header {top: -8px;}

.header .menuPrincipal {
	position: relative;
	height: 3rem;
	width:100vw;
	background: rgb(74,175,216);
	background: -moz-linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%);
	background: linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#4aafd8",endColorstr="#66c0a2",GradientType=1);	
}
.header-alternado .menu, .header .menu {opacity:1;}
.header .menu-icon {display: none;}
.header .menu {
    position: relative;
    top: 3rem;
    width: 38rem;
    height: 2.4rem;
    padding: 0;
    max-height: none;
    margin: 0 auto;
    background: transparent;
}
.header li {float: left; line-height:0; margin: 0 0.3rem;}
.header li a {
	padding: 1rem 0.7rem;
	font-size: 0.9rem;
	color:#fff;	
	border-right: none !important;	
} 
.header li a::before {
	content: '●';
	font-size: 1.3rem;
	color: #85d4e7;
	display: block;
	margin-left: -4rem;
	padding: 0 2.7rem;
}
.header li a:hover {color:#03568e;}
.header li:first-of-type a::before {content: '';}	

.header.sticky {opacity:0.8; top: -1.1rem;}
.header.sticky .logo img {width: 8rem;}	
.header.sticky .menu {
	position:relative;
    float: right;
    transition: top 0.3s ease;
    top: 4rem;
	right: -3.3rem;
    background: transparent !important;
	z-index: 10;
}
.header.sticky li a {color:#fff;}
.header.sticky li a:hover {color:#00ceff;}
.header.sticky .logo img {margin:-1.3rem 0 0 1rem; top: 4rem; opacity: 0.3;}
.header.sticky .contatoTopo a {	top: 3.5rem; }

.header-alternado {height:17rem;}
.header-alternado .logo img {
    width: 9rem;
	height: auto;
    top: 7.5rem;
	left:0;
}	
.header-alternado .menu {
    position: relative;
	top: -6.3rem;
    padding-left: 0;
    width: 38rem;
    height: 2rem;	
    display: block;
    margin: 0 auto 0 auto;
	background:transparent !important;
}
.header-alternado.sticky .menu {position:absolute; top: 6.3rem;  width: 51rem; right:0;}
.header-alternado li a {color:#fff;}
.header-alternado.sticky {top: -20px;}
.header-alternado.sticky  li a {color:#fff;}
.header-alternado.sticky .bg-header {display:none;}

.header-alternado .menu-btn:checked ~ .menu, .header .menu-btn:checked ~ .menu, .header-alternado.sticky .menu-btn:checked ~ .menu, .header.sticky .menu-btn:checked ~ .menu {padding:0;}

.frase-capa {
    width: 370px;
    height: 370px;
}

.frase-capa::before {font-size: 300px;}

.texo p {font-size: 26px;}

.contatoTopo a {
	position: relative;	
	top: 5.3rem;
	left: 79vw;
	padding-right: 2rem;
}
.contatoTopo div {display:block;}
.contatoTopo div img {
	float: left; 
	width:5%; 
	height:auto; 
	display:inline;     
	margin-right: 0.5rem;
	background:#fff;
}
.contatoTopo {right: 3rem; display:none;}
.contatoTopo .whatsapp {margin-top: 0.4rem; color:#fff;}

.logotipo-resumido {
  display: block;
  top: -1.3rem;
  position: relative;
  z-index: 9;
}
.logo img {
    width: 8rem;
    position: relative;
    top: 3rem;
    left: 1rem;
	opacity: 0.8;	
}
:root {
  --altura-menu: 3rem;
}

.hero-logo {
  top: calc(
    var(--altura-menu)
    + env(safe-area-inset-top, 0px)
  );
}


main h2 {font-size: 1.3rem;}

.box-resumo {
  overflow: hidden;
  width: 71vw;
  margin: 0 auto;
}

#parceiros > p {
  text-align: justify;
  width: 70vw;
  margin: 0 auto;
}

.limiteContato #name {
    width: 28rem;
    margin-bottom: 0.8rem;
}
.limiteContato #phone {
width: 15rem;
margin:0 0 0 -0.55rem;
}
.limiteContato #email {width: 28rem;}
.limiteContato #message {
    width: 33rem;
    height: 10rem;
    margin: 1rem 0;
}

.limiteContato form {
	position: relative;
	width: 76vw;
	margin: 2rem auto;
}

.aviso {
	position: relative;
	margin-left: 5.8rem;
}

#contato-limite {
	position: relative;
	top: 2rem;
}

.secao-apresentacao {margin-bottom: 4rem;}
  
#apresenta {width: 77%; margin: 0 auto 4rem auto;}  
  
#apresenta-1 p,
#apresenta p {
	line-height: 1.4em;
	font-size: 1.1rem;
}

 #apresenta p {width: unset;}

#apresenta-1 {position: relative; margin-top: 3rem;}

#tratamentos {
	position: relative;
	top: 3rem;	
}

#interna #accordion {
	position:relative;
	margin: 0 auto 5rem auto;
	width: 87vw;
}
#accordion p,
summary {font-size: 1.1rem;}

#parceiros figcaption {width: 234px;}

.foto {
  width: 37%;
  height: auto;
}

.Engloba {width: 96%; gap: 1rem !important;}
.limiteIndividual {flex-basis: calc(42% - 5px);}
.limiteTitulo {width: 100%;}
.titTratamento {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: start;
}
.limiteTitulo span {
	position: inherit;
	width: 100%;
	font-size: 1.3rem;
	font-weight: bold;
}

#duvidas p,
.button ,
.description {font-size: 1.1rem; text-align:center;}
#duvidas {margin-top: 6rem;  }
#duvidas p {margin-top: 1rem !important; width: 70vw;}

.paragrafo {width: 78vw;} 

#familia {
    position: relative;	
    margin: 0 auto 6rem auto;
    height: 36rem;
    top: 4rem;	
}	
#familia div {
	position:relative;
	width: 100vw; 
	top:0; 
	margin-bottom:3rem;
}
#familia p {
    margin: 0;
    line-height: 1.1rem !important;
    font-size: 1rem;
    color: #fff;
}
 #familia li {
    width: 40vw;
    height: auto;
}
#familia img {
    width: 32vw;
    height: auto;
	margin: auto 3px auto 4px;
} 
.fotoHover {float:left;}
#familia figcaption {
  position: absolute;	
  width: 100%;
  top: 0;
  padding: 0.5rem;
}

.contatoRodape img {
	width: 5%;
	height: 10%;
} 

.mapa {margin: 2rem auto;}
 
footer .whatsapp {
	font-size: 1.4rem;
	line-height: 1.8rem;	
	margin:1rem auto;
	text-align:center;
	display:block;
}


#parceiros {top:-2rem;}


.whats-float {
    position: relative;
    right: -33.4rem;
    top: -18rem;
}

.fotoHover p {
	position: relative;	
	font-weight: 300;
	top: 0;
	font-size: 0.9rem !important;  
}

.logo-footer {width: 17%;}

.waves {
    height: 10vh;
    min-height: 70px;
    max-height: 100px;
}


.meta {justify-content: left;}

.post-content h2 {text-transform: uppercase;}
.btn-outline {
  width: 15rem;
  margin: 2rem auto;
}

.main-home-blog {margin-top: 4rem;}

.post-full {
  width: 100%;
  background: #000;
}
.post-full h2 {color: #fff;}
.post-full a,
.post-full p {color: #d7d7d7;}
.btn-outline {border: 2px solid #d7d7d7;}

#pg-blog {
  width: 80%;
  margin: 5rem auto 4rem auto;
}

#pg-blog .intro-blog {
  width: 30rem;
  margin: 0 auto 2rem auto;
}

.imgBlog-bg-abaixo {
    width: 37%;
    height: auto;
    position: relative;
    top: 3rem;
    left: -4rem;
}
  
.fotos-blog img {
  margin: 3rem auto;
  display: block;
  width: 40%;
  height: auto;
}

.imgBlog-centro-abaixo {
    width: 40%;
    height: auto;
    margin: 3rem auto 0 auto;
    display: block;
}

.ebooks-container {
position: relative;
top: 2rem;	
margin-bottom: 9rem;
}

.ebooks-header p {
  width: 85%;
  margin: 0 auto 3rem auto;
}
#introducao-e-books  {
  width: 85%;
  margin: 0 auto 4rem auto;
}
#introducao-e-books  p {margin: 0 auto 2rem auto;}

.ebook-leitor {margin: 0 auto 3rem auto;}
.ebook-leitor iframe {
  width: 80%;
  height: 300px;  
  margin: 0 auto;
  display: block;
}

} 

/* FIM TABLET 768px */

@media screen and (min-width: 768px) and (max-width: 768px) {
	#apresenta {margin-top: -4rem;}
	.whats-float {right: -29.4rem;}	
}


@media screen and (min-width: 800px) and (max-width: 800px) { 
#apresenta {margin-top: -3rem;}
#apresenta-1 {margin-top: 4rem;}
#tratamentos {top:2rem;}
#familia {top: 0; margin: 0 auto 0 auto; height: 31rem;}
#interna #familia {top:2rem;}
#familia div {top: -14px;}  
#duvidas {margin-top: 5rem;}
#interna #parceiros {margin:-2rem auto 8rem auto;}
footer {position: relative; margin-top: 22rem;} 

.foto {
    width: 31%;
    height: auto;
}

.header .menu {right:1.8rem;}
.header.sticky .menu {right: -2rem;}
.header-alternado.sticky .menu {right: 1rem;}

.whats-float {right: -32rem;}

.chamada-principal p {font-size: 1.3rem;}
.btn-popup-mobile {margin-top: 2rem;}

}

@media (min-width: 1280px) and (max-height: 800px) {
	
.hero-seta {display: block; z-index:999; position: absolute; bottom: 3rem;}

.hero-video {
  position: relative;
  min-height: 100vh; /* ou 60vh, 70vh, etc */
  overflow: hidden;
}
.hero-video__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;  
}

/* Estado inicial */
.overlay-hero {
	position: absolute;
	bottom: 10rem;
	left: 50%;
	width: 500px;
	margin-left: -250px;
	background: rgba(0,0,0,0.8);
	border-radius: 1rem;
	padding: 2rem;	
	opacity: 0;
	transform: translateY(20px);
	pointer-events: none;
    transition:
      opacity 0.6s ease 1.4s,
      transform 0.6s ease 1.4s;
}

.pagina-carregada .overlay-hero {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

@media (prefers-reduced-motion: reduce) {
  .overlay-hero {
    transition: none;
    transform: none;
    opacity: 1;
  }
}

.chamada-principal h1 {color: #0080ff;}
.chamada-principal p {color: #d9d9d9;}
.botao-principal {
  display: block;
  width: 152px;
  margin: 0 auto;
}

}


@media screen and (min-width: 1280px) and (max-width: 1920px) {
	
.chamada-trigger {
top: 40%;
right: -3rem;	
}
	
.popup-hero h2 {
text-transform: uppercase;
color: #fff;
font-size: 2rem; 
margin-bottom: 2rem;
}	
.popup-hero p {
line-height: 1.4rem; 
margin-bottom: 3rem;
font-size: 1.1rem;
}
.btn-popup {
background: #fff;
color: #003366;
transition: background 0.3s ease;
}
.btn-popup:hover {
background: #003366;
color: #fff;
}	

.foto {width: 29%;}
.apresentacao-desktop {display: block;}	

.header {left:0; position: relative;}

.ico-flutuante {
    position: relative;
    width: 40px;
    height: 40px;
    top: 10px;
}

#erro {margin:-5rem auto -10rem auto;}	

#erro article img {
	position:relative;
	display:block;
	width:34%;
	height:auto;
	margin: 1rem auto 11rem auto;
}

.logotipo-resumido {
  display: block;
  top: -1.3rem;
  position: relative;
  z-index: 9;
}
.logo img {
	position: relative;
	width: 10rem;
	left: 3rem;
	top: 6rem;
	opacity: 0.8;	
}
  .hero-logo {
    width: clamp(100px, 13vw, 259px);
    height: 400px;
    left: 4rem;
    top: 1rem;
  }
.hero-logo__img {margin: 4rem auto 0 auto;}

@keyframes fadeInUp {
  from {opacity: 0; transform: translate(-50%, 10px);}
  to   {opacity: 1; transform: translate(-50%, 0);}
}

/* MENU DA HOME */

.header .menuPrincipal { 
	position: absolute; 
	top: 0; 
	left:0; 
	height: 3.2rem; 
	background: rgb(74,175,216); 
	background: -moz-linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%); 
	background: -webkit-linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%); 
	background: linear-gradient(90deg, rgba(74,175,216,1) 0%, rgba(74,175,216,1) 50%, rgba(102,192,162,1) 100%); 
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#4aafd8",endColorstr="#66c0a2",GradientType=1); 
	width: 100%;
}
.header .menu-icon {display: none;}
.header .menu {opacity:1;}
.header .menu {
	position: relative; 
	top: 3rem; 
	right: 0; 
	width: 81rem; 
	height: 2.4rem; 
	padding:0; 
	max-height: none; 
	margin:0; 
	background:transparent; 
	z-index: 9; 
} 
.header li {
	float: left; 
	line-height:0; 
	margin: 0 0.3rem;
}
.header li a {
	padding: 1rem 0.7rem; 
font-size: 1.2rem; 
	color:#fff; 
	border-right: none !important;
}
.header li a::before {
	content: '●'; 
font-size: 1.3rem; 
	color: #85d4e7; 
	display: block; 
	margin-left: -4rem; 
	padding: 0 2.7rem;
}
.header li a:hover {color:#03568e;}
.header li:nth-child(1) {padding-left:3rem;}
.header li:first-of-type a::before {content: '';}


/* MENU DAS PÁGINAS INTERNAS */

.header-alternado .header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
 
.header-alternado .menu {opacity:1;} 

.header-alternado .logo img {
	position: relative; 
	margin: 0 auto; 
	width: 9.5rem; 
	top: 11.5rem; 
	left: 0; 
} 
 .header-alternado .menu {
    position: absolute;
    left: 4rem;
    padding-left: 0;
    width: auto;
    height: 2rem;
    display: block;
    background: transparent !important;
  }
.header-alternado li a {color:#fff;} 
.header-alternado .menu-btn:checked ~ .menu, .header .menu-btn:checked ~ .menu {padding:0;} 
.header-alternado .menuPrincipal {position: absolute; width: 100%;} 
.header-alternado .contatoTopo {
	top: -4.6rem;
	right: 10rem;
} 

.contatoTopo {
	top: -4.8rem; 
	right: 6rem; 
	z-index: 9;
} 
.contatoTopo a { 
	position: relative; 
	top: 5.3rem; 
	left: 81.5vw; 
font-size:1.2rem;
	padding-right: 2rem;
} 
.header-alternado .header .contatoTopo div {display:block;}
.header .contatoTopo div {display:block;}
.contatoTopo div img { 
	position:relative; 
	float: left; 
	width:5%; 
	height:auto; 
	display:inline; 
	margin-right: 0.5rem; 
	top:0.3rem; 
	background:#fff; 
}
.contatoTopo .whatsapp {
	margin: 0.4rem 0 0 2rem; 
	color: #fff;
} 

.logotipo-resumido {
	display: block; 
	top: -1.3rem; 
	position: relative; 
	z-index: 9;
}

.container-img-txt {
  position: relative;
  margin: 2rem auto;
}

.Engloba {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 2rem;
width: 75%;
margin: 0 auto;
}

.paragrafo {
    width: auto;
font-size: 1rem;
    line-height: 1.3rem;
    text-align: center;
	margin-bottom: 2rem !important;
}

.txt-duvidas {margin-bottom:4rem;}

.box-resumo {width: 44.5vw;}

#apresenta-1 p {
font-size: 1rem;
  line-height: 1.3rem;
  width: 90%;
}

.destaque-ebooks p {
  font-size: 1.1rem;
  line-height: 1.4rem;
}  

footer .whatsapp {
font-size: 1.4rem; 
	text-align: center;
	display: block;
    margin: 1rem auto;	
}

  .limiteContato {
    position: relative;
    top: 3rem;
    width: 60%;
    margin: 0 auto;
    border: 1px solid #ccc;
    padding: 3rem;
    border-radius: 2rem;
  }
.limiteContato form {top: 2rem;}

#contato-limite #name {margin: -0.3rem 0 1.1rem 0;}
#contato-limite #phone {margin-left: -0.5rem;}
#contato-limite #email {width: 300px;}
#contato-limite #message {
	position: relative;	
	clear: both;
	display: block;
	margin: 1.4rem 0 0 0;
	top: 1rem;
	width: 500px;
	height: 300px;
}
#submitForm {
	float: none;
	position: relative;	
}

#familia {margin-bottom: 15rem;}
#familia > div {
display: grid;
    width: 90%;
    gap: 20px;
    grid-template-columns: 1fr 1fr 1fr;
	margin: 0 auto;
}
#familia div {min-width: 0;}
#familia p {
    position: relative;		
    margin: 0;
line-height: 1.3rem;
    font-size: 1rem; 
    color: #fff;
}
 #familia li {
    width: 40vw;
    height: auto;
}
#familia img {
	width:100%;
     height: auto;
	margin: auto 3px auto 4px;
} 
#familia figcaption {
  position: absolute;	
  width: 100%;
  top: 0;
  padding: 1rem 0.5rem 0.5rem 0.5rem;
}
#familia .fotoHover {display: block;}

main h2 {font-size: 1.5rem;  text-transform: uppercase;}

.contatoRodape img {
	width: 2rem;
    height: auto;
} 

.mapa {margin: 2rem auto;}

summary {font-size: 1.3rem;}

#duvidas {
    position: relative;	
line-height: 1.6rem;
    font-size: 1.3rem;
	margin-bottom: 6rem;
}

#apresenta {width: 70%; margin: 0 auto 4rem auto;}
#apresenta p {font-size: 1.1rem; line-height: 1.5rem; width: auto;}
#apresenta hr {margin-bottom: 5rem;}

#interna #tratamentos {
    position: relative;
    overflow: hidden;
    margin-bottom: 5rem;
}

#interna #accordion {
	position:relative;
	margin: 6rem auto 5rem auto;
	width: 70%;
}
#accordion p,
summary { font-size: 1rem; line-height:1.3rem; margin-top: 1rem;}

#accordion .marcadores {margin: 2rem 0 2rem 1rem; width: 44vw;}

.button,
.description {font-size: 1rem;  line-height: 1.3rem;} 
 
#parceiros {margin-top:7rem;}

#parceiros > p {font-size:1.3rem; line-height:1.6rem;}

#parceiros figcaption p {font-size:1.3rem; line-height:1.6rem;}

#parceiros figcaption {height:10rem; width: 235px;}

.whats-float {right: -0.4rem;}

.destaque-ebooks {
width: 100%;
padding: 0;
border: 1px solid #ccc;
margin-top: 0;
max-width: none;
}

.destaque-ebooks h2 {
    background: #dadada;
    padding: 0.6rem 0;
    border-radius: 16px 16px 0 0;
	margin-bottom: 0;
}

.titulo-ebooks {
  display: grid;
  place-items: center; 
  width: 100%;
  text-align: center;
  margin-bottom: 2rem;
}

.ebooks-grid {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  gap: 2rem;
}

.ebooks-grid p {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 0 auto;
}
.link-ebooks {
  display: flex;
  align-items: center;
  justify-content: center;
}
.ebooks-grid > picture {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* risco vertical separando as colunas */

.ebooks-grid > *:not(:first-child)::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 80%;
  width: 2px;
  background: #dadada;
}

.ebooks-grid img {
  max-width: 260px;
  width: auto;
  height: auto;
}
 .ebooks-grid p {
    text-align: center;
    margin: 0 auto;
}

.link-ebooks {
display: inline-flex;
justify-content: center;
align-items: center;
background-color: #00B3FB;
color: #fff;
font-weight: 500;
font-size: 1.1rem;
text-align: center;
height: 100%; 
transition: background-color 0.3s ease;
}
.link-ebooks:hover {background:#71D3FB;}
.ebooks-grid > picture img {
  display: block !important;
  width: 200px !important;
  max-width: 300px !important;  
}

.logo-footer {width: 11%;}

footer .waves {top:2rem;}
.base-amarela {height: 6rem;}

main {
	width: 70%;
    margin: 4rem auto;
}

.main-home-blog {
  position: relative;
  width: 70%;
  margin: 4rem auto;
}
#blog-home .post-full {width: 100%;}
.post-full {
  width: 100%;
  background: #000;
}
.post-full h2 {color: #fff;}
.post-full a,
.post-full p {color: #d7d7d7;}
.btn-outline {border: 2px solid #d7d7d7;}

.chamada-principal {display: none;}
.hero-video {min-height: 100vh;}
.hero-seta {display:block; bottom: 5rem;}

.limiteTitulo span {font-size: 1.2rem;}

.imgBlog-bg-abaixo {
  width: 30%;
  height: auto;
  left: -244px;
  position: relative;
}

#pg-blog {
	width: 80%;
  margin: 0 auto;
}
.intro-blog {
width: 30rem;
  margin: 3rem auto 3rem auto;	
}

#pg-blog .marcadores {
  width: 50vw;
  display: block;
  margin: 3rem auto;
}

#pg-blog .sombreado {margin-bottom: 4rem;}


.imgBlog-centro-abaixo {
  width: 30%;
  height: auto;
  margin: 3rem auto;
  display: block;
}

.intro-blog {margin: 0 auto 4rem auto;}

#contato-limite {
  margin-bottom: 8rem;
  position: relative;
}


.ebooks-container {
position: relative;
top: 03143
  ;	
margin-bottom: 9rem;
}

.ebooks-header p {
  width: 85%;
  margin: 0 auto 3rem auto;
}
#introducao-e-books  {
  width: 85%;
  margin: 0 auto 4rem auto;
}
#introducao-e-books  p {margin: 0 auto 2rem auto;}

.ebook-leitor {margin: 0 auto 3rem auto;}
.ebook-leitor iframe {
  width: 80%;
  height: 300px;  
  margin: 0 auto;
  display: block;
}

#blog-home {width: 80%;}

#pg-blog p {
	margin: 1rem auto 0 auto;
	width: 80%;
	font-size: 1.2rem;
	line-height: 1.5rem;
}
.imgBlog-bg-abaixo {
    width: 24%;
    left: -348px;
}

} /* FIM 1280 ATÉ 1920 */


@media (min-width: 1366px) and (max-width: 1400px) {

.hero-video video {min-height: 95vh;  object-position: center 50%;}
.hero-seta {display:block; bottom: 2rem;}
.fotos-blog img {
  width: 50%;
  height: auto;
  margin: 3rem auto;
  display: block;
}
#pg-blog .intro-blog {margin: 2rem auto 4rem auto;}
#contato-limite {
  margin-bottom: 8rem;
  position: relative;
}
.ebooks-container {
position: relative;
top: 0;	
margin-bottom: 9rem;
}

.ebooks-header p {
  width: 85%;
  margin: 0 auto 3rem auto;
}
#introducao-e-books  {
  width: 85%;
  margin: 0 auto 4rem auto;
}
#introducao-e-books  p {margin: 0 auto 2rem auto;}

.ebook-leitor {margin: 0 auto 3rem auto;}
.ebook-leitor iframe {
  width: 80%;
  height: 300px;  
  margin: 0 auto;
  display: block;
}
.ebook-card {width: 60%;}

}

@media (min-width: 1536px) and (max-width: 1920px) {

.chamada-trigger {
  font-size: 1.2rem;
  width: 17rem;
}

.hero-seta {width: 2rem; height: 2rem;}
.popup-hero p {
    line-height: 1.5rem;
    font-size: 1.2rem;
	margin-bottom: 4rem;
}
.btn-popup {font-size: 1.2rem;}
.popup-hero h2 {margin-bottom: 3rem;}

.header li a {font-size: 1.4rem;}
.contatoTopo .whatsapp {font-size: 1.4rem;}
.contatoTopo div img {width: 6%;}
.header-alternado .logo img {width: 10.5rem;}
main {margin: 2rem auto 4rem auto;}
main h2 {font-size: 1.7rem;}
.header .contatoTopo {top: -5rem;}
.header-alternado .contatoTopo {top: -4.6rem;}
h2.tit span {font-size: 1.1rem;}

.link-ebooks,
.ebooks-grid p {
    font-size: 1.2rem;
    line-height: 1.5rem;
}

#apresenta p {font-size: 1.2rem;}

#familia p,
#apresenta-1 p {
    font-size: 1.2rem;
    line-height: 1.5rem;
    width: 90%;
}
#familia figcaption {padding: 1rem 1rem 0.5rem 2rem;}
enderecoRodape address {
  line-height: 1.5rem;
  font-size: 1.2rem;
}

.description {
    font-size: 1.2rem;
    line-height: 1.5rem;
}
.limiteTitulo span {font-size: 1.4rem;}

.post-full a,
.post-full p,
.marcadores li,
#accordion p,
details div,
summary,
.paragrafo {
    font-size: 1.2rem;
    line-height: 1.5rem;
}

.post-full a {text-transform: uppercase;}
.post-full p {margin-bottom: 2rem;}
.meta {margin-bottom: 2rem;}

.contatoRodape img {width: 2.5rem;}

.ebooks-container {
position: relative;
top: 5rem;	
margin-bottom: 9rem;
}

.ebooks-header p {
  width: 85%;
  margin: 0 auto 3rem auto;
}
#introducao-e-books  {
  width: 85%;
  margin: 0 auto 4rem auto;
}
#introducao-e-books  p {margin: 0 auto 2rem auto;}

.ebook-leitor {margin: 0 auto 3rem auto;}
.ebook-leitor iframe {
  width: 80%;
  height: 300px;  
  margin: 0 auto;
  display: block;
}


#pg-blog .intro-blog {
  width: 30rem;
  margin: 0 auto 5rem auto;
}
.fotos-blog img {
  width: 50%;
  height: auto;
  display: block;
  margin: 4rem auto;
}

.imgBlog-centro-abaixo {width: 22%;}

.foto {width: 32%;}

.chamada-trigger {right: 1rem;}

.header-alternado .menu {
	top: 4rem;
	left: 17rem;
}
.header-alternado .contatoTopo {
    top: -3.6rem;
    right: 19.5rem;
  }

} /* FIM DO 1536 À 1920 - DETALHES FINOS */



@media (min-width: 1920px) and (max-width: 1920px) {
	
.hero-logo {height: 550px;}
.hero-logo__img {
    width: 75%;
    top: 1rem;
  }
.header-alternado .logo img {width: 13rem;}

}

@media screen and (min-width:915px) and (max-width: 915px) {
		
		.header.sticky .logo img {
		  position: relative;
		  margin-left: 0rem;
		}
		
		.foto {width: 28%;}

		
}

@media screen and (min-width:962px) and (max-width: 962px) {
		
		.fotoHover p {
		top: 2rem;
		font-size: 1.1rem !important;
		}	
		
		.header .menu {right: 1rem;}		
		.header.sticky .menu {right: 1.5rem;}
		
	}

	@media screen and (max-width: 800px) {		

		.whats-float {
			position: relative;
			right: -29rem;
			bottom: -5rem;
		}		
		
	} 

	@media screen and (min-width: 801px) and (max-width: 915px) {
		.header .menu { right: 0.8rem; }
		.whats-float {right:-38.4rem;}
		.header.sticky .logo img {opacity: 1;}	
	}
	
	@media screen and (min-width: 962px) and (max-width: 962px) {
		
		.header.sticky .logo img {opacity:1;}
		#apresenta {margin-top: 20rem;}
		.whats-float {right: -41.4rem;}
		  
		
	}
	
	@media screen and (min-width: 1024px) and (max-width: 1024px) {
	
	.header.sticky .logo img {opacity:1;}
	.header .menu {right:0.8rem;}
	.header.sticky .menu {right: -0.3rem;}
	.header-alternado.sticky .menu {right:4rem;}
	#apresenta {margin-top: 12rem;}
	.whats-float {right: -45rem;}	  
		
	}	
	 
	
} /* FIM LANDSCAPE */

@media only screen and (max-width: 768px) and (max-height: 1024px) {
  body, html {
    overflow-x: hidden;
  }
}  /* força eliminação da barra horizontal para mobile de ambas orientações, retrato e landscape */