html {
	font-size: 100%
}

body {
	font-family: "Helvetica";
	color: #666;
	max-width: 100vw;
	overflow-x: hidden
}

.main-title {
	font-family: "Helvetica";
	font-size: 1.5rem;
	color: #02384f;
	margin: 0 0 2rem;
	display: flex;
	flex-direction: column
}

.main-title.color2 {
	color: #E44011
}

.main-title.color3 {
	color: #fff
}

.main-title.center {
	align-items: center
}

.main-title strong {
	display: block;
	font-weight: bold;
	font-size: 2.25rem
}

.main-title::after {
	content: "";
	width: 100px;
	height: 5px;
	background-color: #c4c4c4;
	margin-top: 1rem
}

.main-title.color3::after {
	background-color: #fff;
	opacity: .2
}

.main-title.noLine::after {
	display: none
}

.main-button {
	height: 4rem;
	padding: 0 2rem;
	display: inline-flex;
	align-items: center;
	color: #fff;
	background-color: #02384f;
	font-weight: bold;
	text-decoration: none;
	transition: all .3s
}

.main-button:hover {
	background-color: #012636;
	color: #fff
}

.second-button {
	height: 4rem;
	padding: 0 2rem;
	display: inline-flex;
	align-items: center;
	color: #02384f;
	border: 2px solid #02384f;
	font-weight: bold;
	text-decoration: none;
	transition: all .3s
}

.second-button:hover {
	background-color: #012636;
	color: #fff
}

.header {
	position: fixed;
	padding: 1.5rem 0;
	width: 100%;
	top: 0;
	transition: all .3s;
	z-index: 9999;
	border-bottom: 1px solid transparent
}


.header.sticky {
	padding: 1rem 0;
	background-color: #fff;
	border-color: #f0f0f0
}

.header .container {
	display: flex;
	align-items: center;
	justify-content: space-between
}

.header .logo {
	width: 405px;
	height: 3rem;
	background-image: url("../images/logo-white.png");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	text-indent: -9999px;
	overflow: hidden;
	transition: all .3s;
	display: block
}

@media (max-width:425px) {
	.header .logo {
		width: 280px
	}
}

.header.sticky .logo {
	background-image: url("../images/logo-color.png")
}

.header .header-navbar {
	display: flex;
	align-items: center;
	gap: 1.5rem
}

.header .header-navbar .link-header {
	color: #fff;
	text-decoration: none
}

@media (max-width:1024px) {
	.header .header-navbar .link-header {
		display: none
	}
}

.header .header-navbar .btn-header {
	position: relative;
	cursor: pointer;
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	color: #02384f;
	transition: all .3s
}

.header .header-navbar .btn-header svg {
	width: 2rem;
	height: 2rem
}

.header .header-navbar .btn-header:hover {
	background-color: #02384f;
	color: #fff
}

.header .header-navbar .floating-menu {
	position: absolute;
	background-color: #FFF;
	top: 48px;
	width: 270px;
	right: 0;
	color: #023850;
	overflow: hidden;
	transition: all 300ms cubic-bezier(1, 0, 0, 1);
	max-height: 0
}

.header .header-navbar .floating-menu .item {
	list-style: none;
	padding: 0
}

.header .header-navbar .floating-menu .item .menu-item {
	text-align: right;
	text-decoration: none;
	color: #023850;
	transition: all 300ms
}

.header .header-navbar .floating-menu .item .menu-item:hover {
	background-color: #023850;
	color: #FFF
}

.header .header-navbar .floating-menu .item .menu-item a {
	padding: 15px;
	display: block;
	width: 100%;
	height: 100%;
	text-align: right;
	text-decoration: none;
	color: #023850
}

.header .header-navbar .floating-menu .item .menu-item:hover a {
	color: #FFF
}

.header.sticky .header-navbar .link-header {
	color: #02384f
}

.hero {
	padding: 10rem 0;
	min-height: 100vh;
	display: flex;
	align-items: center;
	background-color: #db3b16;
	background-position: bottom center;
	background-size: cover;
	background-repeat: no-repeat;
	background-image: url('../images/bg-hero.webp')
}

@media (max-width:992px) {
	.hero {
		background-image: url('../images/bg-hero-clean.webp')
	}
}

@media (max-width:500px) {
	.hero {
		background-image: url('../images/bg-hero-mobile.webp')
	}
}

.hero .hero-content .hero-title {
	color: #fff;
	font-family: "Helvetica";
	font-weight: bold;
	font-size: 4rem;
	margin: 0
}

@media (max-width:425px) {
	.hero .hero-content .hero-title {
		font-size: 3rem
	}
}

.hero .hero-content .hero-subtitle {
	color: #fff;
	font-size: 2rem;
	margin: 0 0 2rem
}

.hero .hero-content .hero-text {
	color: #fff;
	font-size: 1rem;
	margin: 0 0 2rem
}

.hero .hero-content .hero-button {
	height: 4rem;
	padding: 0 2rem;
	display: inline-flex;
	align-items: center;
	border: 1px solid #fff;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	transition: all .3s;
	font-size: 16px
}

.hero .hero-content .hero-button:hover {
	background-color: #02384f;
	border-color: #02384f
}

.about-school {
	position: relative;
	padding: 4rem 0;
	margin-bottom: 4rem
}

.about-school::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
	width: 100%;
	max-width: 1170px;
	height: 100%;
	background-color: #f0f0f0;
	border-radius: 0 0 0 4rem
}

.about-school .container {
	position: relative;
	z-index: 1
}

.about-school .row {
	flex-direction: row;
	align-items: flex-end
}

@media (max-width:1024px) {
	.about-school .row {
		flex-direction: row-reverse;
		align-items: flex-start
	}
}

@media (max-width:768px) {
	.about-school .row {
		flex-direction: column-reverse
	}
}

.about-school .about-img {
	position: absolute;
	bottom: -4rem;
	right: 2rem;
	width: 100%;
	max-width: 40%;
	z-index: -1
}

@media (max-width:1024px) {
	.about-school .about-img {
		position: static;
		display: block;
		margin-left: auto;
		margin-top: -4rem;
		margin-bottom: -4rem;
		min-width: 100%
	}
}

.about-school .about-sign {
	display: block;
	width: 100%;
	max-width: 240px;
	margin: -20px 0 0 auto
}

.methodologies {
	padding: 0 0 4rem;
	border-top: 1px solid #f0f0f0
}

.methodologies .methods-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: space-between
}

.methodologies .methods-menu li {
	width: 20%;
	display: flex;
	align-items: center;
	justify-content: center
}

.methodologies .methods-menu li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 1.5rem 1.5rem;
	transition: all .3s
}

@media (max-width:768px) {
	.methodologies .methods-menu li a {
		padding: 1rem .75rem
	}
}

.methodologies .methods-menu li a[aria-selected="true"] {
	background-color: #f0f0f0
}

.methodologies .methods-menu li a:hover {
	background-color: #e3e3e3
}

.methodologies .methods-menu li a img {
	width: auto;
	height: 80px
}

@media (max-width:768px) {
	.methodologies .methods-menu li a img {
		width: 100%;
		height: auto
	}
}

.methodologies .methods-content {
	padding: 4rem 0;
	background-color: #f0f0f0
}

@media (max-width:1024px) {
	.methodologies .methods-content {
		padding-bottom: 4rem
	}
}

@media (max-width:768px) {
	.methodologies .methods-content .row {
		flex-direction: column-reverse
	}
}

.methodologies .methods-content .method-img {
	margin-bottom: -4rem;
	width: 100%;
	max-width: 88%;
	border: 10px solid #FFF
}

@media (max-width:1024px) {
	.methodologies .methods-content .method-img {
		margin-bottom: 0;
		max-width: 100%
	}
}

.testimonials {
	position: relative;
	margin: 4rem 0
}

.testimonials::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
	width: 100%;
	max-width: 600px;
	height: 100%;
	background-image: url('../images/testimonials-bg.jpeg');
	background-size: cover;
	background-position: center
}

@media (max-width:1024px) {
	.testimonials::after {
		display: none
	}
}

.testimonials .container {
	position: relative;
	z-index: 1
}

.testimonials .testimonials-img {
	border-radius: 0 5rem 0 5rem;
	max-width: 100%;
	max-height: 443px
}

.testimonials .testimonials-img.not-absolute {
	visibility: hidden
}

.testimonials .testimonial-carousel .splide__arrow {
	width: 3rem;
	height: 3rem;
	border-radius: 0;
	opacity: 1;
	background-color: #02384f;
	transition: all .3s
}

.testimonials .testimonial-carousel .splide__arrow svg {
	fill: #fff
}

.testimonials .testimonial-carousel .splide__arrow:hover {
	background-color: #E44011
}

.testimonials .testimonial-carousel .splide__arrow--prev {
	top: auto;
	bottom: -1.5rem;
	right: auto;
	left: 0
}

.testimonials .testimonial-carousel .splide__arrow--next {
	top: auto;
	bottom: -1.5rem;
	right: auto;
	left: 3.5rem
}

.testimonials .testimonial-carousel .splide__arrow[disabled] {
	cursor: not-allowed;
	opacity: .3
}

.testimonials .testimonial {
	padding-bottom: 5rem;
	max-width: 80%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%
}

.testimonials .testimonial-text {
	font-size: 1.25rem;
	background-image: url("../images/quote.png");
	background-position: top left;
	background-repeat: no-repeat;
	padding-top: 1.5rem;
	margin: 2rem 0;
	color: #444
}

.testimonials .testimonial-author {
	font-size: 1.5rem;
	color: #E44011;
	font-weight: bold;
	margin: 0;
	padding: 0
}

.testimonials .testimonial-course {
	font-weight: bold
}

.contents {
	padding: 4rem 0
}

.page .contents, .archive .contents {
	padding: 0;
	padding-bottom: 4rem
}

.contents .col-12 {
	padding: calc(var(--bs-gutter-x) * .5)
}

.contents .content {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	padding-top: calc(4 / 3 * 100%);
	background-size: cover;
	background-position: center;
	transition: all .3s
}

.contents .content::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #E44011;
	opacity: .5;
	z-index: 1;
	transition: all .3s
}

.contents .content.method {
	padding-top: 400px
}

.contents .content:hover::before {
	opacity: 0
}

.contents .content-title {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 1.5rem;
	margin: 0;
	z-index: 2;
	color: #fff;
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 150%;
	transition: all 400ms
}

.contents .content:hover .content-title {
	background-color: rgba(0, 0, 0, .8)
}

.contents .content-blog-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.contents .content-date {
	position: absolute;
	top: 1.5rem;
	left: 0;
	height: 3rem;
	display: flex;
	align-items: center;
	padding-left: calc(1.5rem - .5rem);
	border-left: .5rem solid #fff;
	font-weight: bold;
	color: #fff;
	z-index: 2
}

.contents .content-more {
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #02384f;
	color: #fff;
	transition: all .3s;
	z-index: 2
}

.contents .content-more svg {
	width: 2rem;
	height: 2rem
}

.contents .content-more:hover {
	background-color: #E44011;
	color: #fff
}

.methods-row .col-12 {
	padding: calc(var(--bs-gutter-x) * .5)
}

.methods-row .method {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	max-height: 300px;
	overflow: hidden;
	transition: all .3s
}

.methods-row .method:hover {
	background-color: rgba(235, 90, 57, .7)
}

.methods-row .method .method-title {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 1.5rem;
	margin: 0;
	z-index: 2;
	color: #fff;
	background-color: rgba(0, 0, 0, .5);
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 150%;
	transition: all 400ms
}

.methods-row .method img {
	max-width: 100%;
	height: 300px;
	object-position: center;
	object-fit: cover;
	transition: all 400ms
}

.methods-row .method:hover img {
	transform: scale(1.2)
}

.methods-row .method-date {
	position: absolute;
	top: 1.5rem;
	left: 0;
	height: 3rem;
	display: flex;
	align-items: center;
	padding-left: calc(1.5rem - .5rem);
	border-left: .5rem solid #fff;
	font-weight: bold;
	color: #fff;
	z-index: 2
}

.methods-row .method-more {
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #02384f;
	color: #fff;
	transition: all .3s;
	z-index: 2
}

.methods-row .method-more svg {
	width: 2rem;
	height: 2rem
}

.methods-row .method-more:hover {
	background-color: #E44011;
	color: #fff
}

.franchising {
	position: relative;
	padding: 6rem 0;
	background-color: #db3b16;
	color: #fff;
	border-radius: 4rem 4rem 0 0
}

@media (max-width:1024px) {
	.franchising {
		border-radius: 0
	}
}

.franchising .franchising-button {
	margin-top: 1rem;
	height: 4rem;
	padding: 0 2rem;
	display: inline-flex;
	align-items: center;
	border: 1px solid #fff;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	transition: all .3s
}

.franchising .franchising-button:hover {
	background-color: #02384f;
	border-color: #02384f
}

.franchising .text {
	position: relative;
	z-index: 1
}

.franchising .franchising-img {
	position: absolute;
	bottom: 0;
	right: 35%;
	height: 100%
}

@media (max-width:992px) {
	.franchising .franchising-img {
		right: 25%;
		z-index: 0;
		opacity: .2
	}
}

.franchising .franchising-img-right {
	bottom: 0;
	right: -10%;
	max-width: 100%;
	max-height: 250px;
	float: right
}

@media (max-width:992px) {
	.franchising .franchising-img-right {
		display: none
	}
}

.partners {
	padding: 5rem 0
}

.partners .partner {
	display: flex;
	align-items: center;
	padding: 1.5rem;
	border: 1px solid #f0f0f0;
	height: 100%
}

.partners .partner .partner-logo {
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center
}

.partners .partners-carousel .splide__arrow {
	display: none !important;
	width: 3rem;
	height: 3rem;
	border-radius: 0;
	opacity: 1;
	background-color: #02384f;
	transition: all .3s;
}

.partners .partners-carousel .splide__arrow svg {
	fill: #fff
}

.partners .partners-carousel .splide__arrow:hover {
	background-color: #E44011
}

.partners .partners-carousel .splide__arrow--prev {
	left: -3rem
}

@media (max-width:1024px) {
	.partners .partners-carousel .splide__arrow--prev {
		left: 0
	}
}

.partners .partners-carousel .splide__arrow--next {
	right: -3rem
}

@media (max-width:1024px) {
	.partners .partners-carousel .splide__arrow--next {
		right: 0
	}
}

.partners .partners-carousel .splide__arrow[disabled] {
	cursor: not-allowed;
	opacity: .3
}

.newsletter {
	padding: 5rem 0;
	background-color: #f0f0f0
}

.newsletter .form .input-text {
	width: 100%;
	height: 4rem;
	border: 1px solid #c4c4c4;
	padding: 0 1.5rem;
	outline: none
}

.newsletter .form .input-button {
	width: 100%;
	height: 4rem;
	border: none;
	background-color: #db3b16;
	color: #fff;
	transition: all .3s;
	font-weight: bold
}

.newsletter .form .input-button:hover {
	transform: scale(1.1)
}

.footer .top {
	padding: 3rem 0;
	background-color: #02384f;
	color: #FFF
}

.footer .bottom {
	padding: 1rem 0;
	background-color: #053247;
	color: #FFF
}

.footer .logo {
	width: 405px;
	height: 3rem;
	display: block;
	background-image: url("../images/logo-white.png");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	text-indent: -9999px;
	overflow: hidden;
	transition: all .3s
}

@media (max-width:992px) {
	.footer .logo {
		background-position: center
	}
}

@media (max-width:425px) {
	.footer .logo {
		width: 280px
	}
}

.footer .addr {
	padding: 10px 0
}

.footer .social-links {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 1rem
}

.footer .social-links li a {
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	color: #02384f;
	transition: all .3s
}

.footer .social-links li a svg {
	width: 2rem;
	height: 2rem
}

.footer .social-links li a:hover {
	background-color: #E44011;
	color: #fff
}

.footer a {
	color: #FF7152;
	font-weight: bold;
	text-decoration: none
}

.hero-pages {
	padding: 8rem 0 5rem;
	margin-bottom: 3rem;
	display: flex;
	align-items: center;
	background-color: #E44011;
	background-position: bottom center;
	background-size: cover;
	background-repeat: no-repeat;
	background-blend-mode: multiply
}

.hero-pages.infantil {
	background-color: #FFD500
}

.hero-pages.juvenil {
	background-color: #0069b2
}

.hero-pages.adulto {
	background-color: #289938
}

.hero-pages.beach {
	background-color: #e20134
}

.hero-pages.equipe {
	background-color: #02384f
}

.hero-pages .hero-image {
	width: 100%;
	max-width: 80%;
	top: 0;
	border-radius: 3rem 0 3rem 0;
	box-shadow: 0 0 30px rgba(0, 0, 0, .1);
	margin-bottom: 1rem;
}

@media (min-width:768px) {
	.hero-pages .hero-image {
		position: absolute;
		margin-bottom: 0;
	}
}

.hero-pages.single-guga-post .hero-image {
	height: 186px;
	object-fit: cover;
	object-position: center;
}

@media (min-width: 768px) {	
.hero-pages.single-guga-post .hero-image {
		height: 170px;
		object-fit: cover;
		object-position: center;
	}
}

.hero-pages .hero-content .hero-title {
	color: #fff;
	font-family: "Helvetica";
	font-weight: bold;
	font-size: 4rem;
	margin: 0
}

@media (max-width:425px) {
	.hero-pages .hero-content .hero-title {
		font-size: 3rem
	}
}

.hero-pages .hero-content .hero-subtitle {
	color: #fff;
	font-size: 2rem;
	margin: 0 0 2rem
}

.hero-pages .hero-content .hero-text {
	color: #fff;
	font-size: 1rem;
	margin: 0 0 2rem
}

.hero-pages .hero-content .hero-button {
	height: 4rem;
	padding: 0 2rem;
	display: inline-flex;
	align-items: center;
	border: 1px solid #fff;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	transition: all .3s
}

.hero-pages .hero-content .hero-button:hover {
	background-color: #02384f;
	border-color: #02384f
}

.content-page {
	padding: 4rem 0 0 0
}

.single-noticia .content-page {
	padding: 4rem 0
}

.content-page.infantil .main-button {
	background-color: #eb7721
}

.content-page.infantil .main-button:hover {
	background-color: #c75f12
}

.content-page.infantil .main-title {
	color: #023850
}

.content-page.juvenil .main-title {
	color: #0069b2
}

.content-page.juvenil .main-button {
	background-color: #0069b2
}

.content-page.juvenil .main-button:hover {
	background-color: #004b7f
}

.content-page.adulto .main-title {
	color: #289938
}

.content-page.adulto .main-button {
	background-color: #289938
}

.content-page.adulto .main-button:hover {
	background-color: #1d7129
}

.content-page.beach .main-title {
	color: #e20134
}

.content-page.beach .main-button {
	background-color: #e20134
}

.content-page.beach .main-button:hover {
	background-color: #af0128
}

.content-page.equipe .main-title {
	color: #02384f
}

.content-page.equipe .main-button {
	background-color: #02384f
}

.content-page.equipe .main-button:hover {
	background-color: #01151d
}

.content-page .content-image {
	border-radius: 0 4rem 0 4rem;
	overflow: hidden;
	max-width: 100%;
	max-height: 300px
}

.content-page input::-webkit-outer-spin-button, .content-page input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0
}

input[type=number] {
	-moz-appearance: textfield
}

.content-page .form .input-text {
	width: 100%;
	height: 4rem;
	border: 1px solid #c4c4c4;
	padding: 0 1.5rem;
	outline: none
}

.content-page .form .input-select {
	width: 100%;
	height: 4rem;
	border: 1px solid #c4c4c4;
	padding: 0 1.5rem;
	outline: none;
	background: none;
	color: #757575
}

.content-page .form .input-textarea {
	width: 100%;
	height: 10rem;
	border: 1px solid #c4c4c4;
	padding: 1.5rem;
	outline: none
}

.content-page .form .input-button {
	width: 100%;
	height: 4rem;
	border: none;
	background-color: #E44011;
	color: #fff;
	transition: all .3s;
	font-weight: bold
}

.content-page .form .input-button:hover {
	background-color: #db3b16
}

.gallery .grid-gallery {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 2rem
}

.gallery .grid-gallery .item {
	display: block;
	position: relative;
	padding-top: 50%
}

.gallery .grid-gallery .item img {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	object-fit: cover;
	object-position: top
}

.gallery .item:nth-child(1) {
	grid-area: 1 / 1 / 2 / 2
}

.gallery .item:nth-child(2) {
	grid-area: 1 / 2 / 2 / 4
}

.gallery .item:nth-child(3) {
	grid-area: 1 / 4 / 3 / 6
}

.gallery .item:nth-child(4) {
	grid-area: 1 / 6 / 2 / 7
}

.gallery .item:nth-child(5) {
	grid-area: 2 / 1 / 3 / 3
}

.gallery .item:nth-child(6) {
	grid-area: 2 / 3 / 3 / 4
}

.gallery .item:nth-child(7) {
	grid-area: 2 / 6 / 3 / 7
}

.unit-selector {
	list-style: none;
	margin: 0;
	padding: 0
}

.unit-selector li {
	display: flex;
	align-items: center;
	gap: 1.5rem
}

.unit-selector li .text {
	flex: 1
}

.unit-selector .select {
	width: 100%;
	height: 4rem;
	border: 1px solid #c4c4c4;
	padding: 0 1.5rem;
	outline: none;
	background: none;
	margin-top: 5px
}

#br_mine .state {
	text-decoration: none
}

#br_mine .state .label_icon_state {
	font-size: .7rem;
	font-family: "Helvetica";
	font-weight: bold;
	cursor: pointer
}

.units .unit {
	display: flex;
	flex-direction: column;
	padding: 1.5rem;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
	margin-bottom: 1.5rem;
	min-height: 220px
}

.units .unit .title {
	font-family: "Helvetica";
	font-weight: bold;
	color: #02384f
}

.units .unit .address {
	margin: 1rem 0
}

.oferred-methods {
	margin-bottom: 1rem
}

.units .unit .contacts {
	display: flex;
	align-items: center;
	gap: 1rem
}

.units .unit .contacts .phone {
	flex: 1;
	font-weight: bold
}

.categories-wrapper {
	position: relative;
	width: 100%
}

.categories-wrapper svg {
	width: 2rem;
	height: 2rem
}

.categories-wrapper .slideRight {
	position: absolute;
	top: 0;
	right: 0;
	width: 3.5rem;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	color: #02384f;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #fff 100%)
}

.categories-wrapper .slideLeft {
	position: absolute;
	top: 0;
	left: 0;
	width: 3.5rem;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	color: #02384f;
	background: linear-gradient(-90deg, rgba(255, 255, 255, 0) 0%, #fff 100%)
}

.categories-list {
	list-style: none;
	padding: 0 2rem;
	margin: 0;
	width: 100%;
	overflow: hidden;
	display: flex;
	align-items: center;
	gap: 1rem
}

.categories-list li a {
	display: flex;
	padding: 1rem 2rem;
	border-radius: 4rem;
	background-color: #f0f0f0;
	color: #02384f;
	transition: all .3s;
	text-decoration: none;
	white-space: nowrap
}

.categories-list li a.active, .categories-list li a:hover {
	background-color: #02384f;
	color: #fff;
	text-decoration: none
}

.search-form {
	display: flex
}

.search-form input[type="text"] {
	width: calc(100% - 3.5rem);
	height: 3.5rem;
	border: none;
	padding: 0 0 0 1.5rem;
	border-radius: 3rem 0 0 3rem;
	background-color: #f0f0f0;
	outline: none
}

.search-form button {
	width: 3.5rem;
	height: 3.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0 3rem 3rem 0;
	border: none;
	background-color: #f0f0f0;
	color: #02384f;
	transition: all .3s
}

.search-form button svg {
	width: 1.5rem;
	height: 1.5rem
}

.search-form button:hover {
	background-color: #02384f;
	color: #fff
}

.pagination a {
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	color: #02384f;
	border: 2px solid #02384f;
	text-decoration: none;
	display: inline-block;
	background-color: #fff;
	transition: all 200ms;
	margin-right: 10px
}

.pagination a:hover {
	color: #fff;
	background-color: #02384f;
	border: 2px solid transparent
}

.pagination a.active {
	color: #fff;
	border: 2px solid transparent;
	text-decoration: none;
	background-color: #02384f
}

.wpcf7-not-valid-tip {
	padding: 10px;
	border-color: transparent;
	background-color: #dc3232;
	color: #fff
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
	padding: 10px;
	border-color: transparent;
	background-color: #dca000;
	color: #fff
}

.wpcf7 form.sent .wpcf7-response-output {
	padding: 10px;
	border-color: transparent;
	background-color: #46b450;
	color: #fff
}

.wp-block-button__link {
	border-radius: 0 !important
}

.all-units {
	position: relative
}

.all-units:after {
	content: url('../images/loading.gif');
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: background-color 600ms;
	z-index: -1;
	visibility: hidden
}

.all-units.loading:after {
	background-color: rgba(255, 255, 255, .9);
	z-index: 1;
	visibility: visible
}

.orange-banner {
	position: absolute;
	left: 0;
	width: 100%;
	font-weight: bold
}

.orange-banner+.wp-block-columns {
	margin-top: 100px
}

.top-100 {
	margin-top: 130px
}

.page-id-331 .hero-pages {
	background-color: #023850
}

.page-id-331 .wp-block-columns .has-text-align-center.has-text-color {
	margin-bottom: 0
}

.divider {
	width: 60%;
	height: 4px;
	background: linear-gradient(90deg, #02384f 50%, #E44011 50%);
	margin: 30px auto
}

.oquenosmove img {
	height: auto !important
}

.wp-block-image.w-100 img {
	width: 100%;
	height: auto
}

.qualities .wp-block-column {
	border-radius: 20px;
	box-shadow: 0 0 15px #AAA;
	padding: 20px
}

@media (max-width:768px) {
	.qualities .wp-block-column {
		margin-bottom: 20px
	}
}

#bricks-component-vyT24eGFFLBa9wyAanXBNg {
	width: 100% !important
}

.ajax-loader {
	display: none !important
}

.wpcf7-form {
	position: relative
}

.wpcf7-form:after {
	content: url('../images/loading.gif');
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: background-color 600ms;
	z-index: -1;
	visibility: hidden
}

.wpcf7-form.submitting:after {
	background-color: rgba(255, 255, 255, .9);
	z-index: 1;
	visibility: visible
}

#aula-experimental {
	position: relative
}

#form-professor {
	position: relative
}

#aula-experimental:after, #form-professor:after {
	content: url('../images/loading.gif');
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: background-color 600ms;
	z-index: -1;
	visibility: hidden
}

#aula-experimental.submitting:after, #form-professor.submitting:after {
	background-color: rgba(255, 255, 255, .9);
	z-index: 1;
	visibility: visible
}

#response-ex {
	max-height: 0;
	overflow: hidden;
	border-color: transparent;
	background-color: #46b450;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 30px;
	transition: all 400ms
}

#response-ex.error {
	background-color: #dc3232
}

#response-ex span {
	display: inline-block;
	padding: 10px
}

#response-ex.visible {
	max-height: 47px
}

.chosen-choices {
	padding: 0 1.5rem !important
}

.search-field {
	display: block !important;
	width: 100% !important;
	height: 4rem !important;
	font-size: 16px !important
}

.chosen-container-multi .chosen-choices li.search-field input[type=text] {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	color: #757575 !important
}

.chosen-container-multi .chosen-choices {
	position: relative !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 1.5rem !important;
	width: 100% !important;
	height: auto !important;
	border: 1px solid #c4c4c4 !important;
	cursor: text !important;
	background: #FFF !important
}

.chosen-container-active .chosen-choices {
	box-shadow: none !important
}

.chosen-container .chosen-results li {
	padding: 10px !important
}

.chosen-container .chosen-results li {
	font-size: 16px !important
}

.chosen-container .chosen-results li.highlighted {
	background-color: #02384F !important;
	background-image: linear-gradient(#02384F 20%, #02384F 90%) !important;
	color: #fff
}

.chosen-container-multi .chosen-choices li.search-choice {
	position: relative;
	margin: 3px 5px 3px 0;
	padding: 3px 20px 3px 5px;
	border: 1px solid #aaa;
	max-width: 100%;
	border-radius: 3px;
	background-color: #02384F !important;
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(20%, #02384F), color-stop(50%, #02384F), color-stop(52%, #02384F), to(#02384F)) !important;
	background-image: linear-gradient(#02384F 20%, #02384F 50%, #02384F 52%, #02384F 100%) !important;
	background-size: 100% 19px;
	background-repeat: repeat-x;
	background-clip: padding-box;
	-webkit-box-shadow: 0 0 2px #fff inset, 0 1px 0 rgb(0 0 0 / 5%);
	box-shadow: 0 0 2px #fff inset, 0 1px 0 rgb(0 0 0 / 5%);
	color: #FFF !important;
	line-height: 13px;
	cursor: default
}

.qualities {
	margin: 60px 0
}

.quality {
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	height: 100%;
	border-radius: 20px;
	box-shadow: 0 0 15px #aaa;
	padding: 20px;
	margin-top: 20px
}

.quality h4 {
	font-size: 17px;
	margin-top: 20px;
	text-align: center;
	color: #02384F
}

.quality h4 strong {
	display: block;
	font-size: 51px;
	line-height: 48px;
	color: #E44011
}

.title-special {
	display: block;
	color: #FFF;
	font-weight: bolder;
	text-align: center;
	padding: 2.375rem 1.25rem;
	background-color: #E44011
}

.title-special.blue {
	background-color: #02384F
}

@keyframes bounce {
	0%, 20%, 50%, 80%, 100% {
		transform: translateY(0)
	}

	40% {
		transform: translateY(-30px)
	}

	60% {
		transform: translateY(-15px)
	}
}

.reasons-row .reason {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 15px;
	width: 100%;
	height: 300px;
	padding: 20px;
	color: #FFF;
	z-index: 1;
	overflow: hidden;
	transition: all 400ms;
	opacity: 0;
	margin-bottom: 20px
}

.reasons-row .reason:hover {
	margin-top: -15px;
	z-index: 4
}

.reasons-row .reason.show {
	opacity: 1;
	animation-name: bounce;
	animation-duration: 600ms;
	animation-iteration-count: 1;
	animation-fill-mode: both
}

.reasons-row .reason:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #02384fd7;
	z-index: -1
}

.reasons-row .reason .reason-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	z-index: -2;
	transition: all 600ms
}

.reasons-row .reason:hover .reason-img {
	transform: scale(1.3)
}

.reasons-row .reason-text {
	text-align: center;
	font-weight: bold
}

.family .list {
	display: flex;
	flex-direction: column;
	gap: 35px;
	text-align: center
}

.family .list .list-item h4 {
	font-weight: bold;
	color: #E44011
}

@media (max-width:768px) {
	.row.franchise-page .col-12 {
		margin: 0
	}
}

.col-form-franqueado {
	position: sticky;
	top: 81px;
	padding: 15px 25px;
	height: fit-content
}

#form-franqueado input:not(input[type="submit"]), #form-franqueado select {
	background-color: #FFF
}

.title-franqueado {
	font-size: 2rem;
	color: #FFF;
	font-weight: bold;
	text-align: center
}

.franchise-images .splide__arrow {
	width: 3rem;
	height: 3rem;
	border-radius: 0;
	opacity: 1;
	background-color: #02384f;
	transition: all .3s
}

.franchise-images .splide__arrow:hover {
	background-color: #E44011
}

.franchise-images .splide__arrow svg {
	fill: #FFF
}

@media (min-width:1200px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl {
		max-width: 1280px
	}
}

.single-metodologia .content-page {
	font-size: 18px
}

::-webkit-scrollbar {
	width: 12px
}

::-webkit-scrollbar-thumb {
	background-color: #E44011;
	border-radius: 10px
}

::-webkit-scrollbar-track {
	background-color: #e43f1125
}

.reading-time {
	display: flex;
	align-items: center;
	gap: .5rem;
	color: #02384f;
	margin-bottom: 2rem;
}