/*
COLORES

Rojo
color: #e40713;

Azul
color: #272360;

*/
@media only screen and (max-width:1480px) {

	.wrapper {
		width: 100%;
		padding: 0 40px;
		transform: none;
		position: static;
	}

}

@media only screen and (max-width:1350px) {

	p, ul, ol {
		font-size: 20px;
		line-height: 28px;
	}

	#main #features {
		display: block;
	}

	#main #features .block {
		width: 50%;
	}

}

@media only screen and (max-width:1100px) {

	#header .menu li a {
		font-size: 16px;
	}

	#footer .wrapper .block ul li:last-child span {
		display: none;
	}

	#footer .wrapper .block ul li:last-child a {
		width: 50%;
		float: left;
	}

	#footer .wrapper .block:first-of-type ul li:last-child a {
		width: 100%;
	}

	#main #pruebas .wrapper {
		padding-top: 0 15px;
	}

}

@media only screen and (max-width:980px) {

	h1, h2, h3, h4, h5 {
		font-size: 22px;
	}

	p, ul, ol {
		font-size: 18px;
		line-height: 24px;
		text-align: left;
	}

	.wrapper {
		padding: 0 15px;
	}

	.button.big {
		padding: 15px 20px;
		font-size: 18px;
	}

	#header, #header.fixed {
		height: 122px;
	}

	#header::after {
		display: none;
	}

	#header #top {
		width: calc(100% + 30px);
		height: 64px;
		padding: 0 15px;
		border-bottom: 1px solid #eaeaea;
		margin-left: -15px;
		flex-direction: column;
		padding-bottom: 10px;
	}

	#header #top .contacts {
		width: 100%;
		float: left;
	}

	#header #top .contacts .phones {
		width: 100%;
		height: 30px;
		justify-content: space-between;
		align-items: center;
		display: flex;
	}

	#header #top .contacts .phones::after {
		display: none;
	}

	#header #top .contacts .phones a {
		margin: 0;
		font-size: 13px;
		text-align: center;
	}

	#header #top .contacts .social {
		position: absolute;
		top: 85px;
		left: 180px;
	}

	#header #top .contacts .social a {
		margin-left: 10px;
		font-size: 15px;
	}

	#header #logo {
		width: 160px;
		height: 41.42px;
		margin-top: 7px;
	}

	#header.fixed #logo {
		margin-top: 7px;
	}

	#header #logo img {
		width: 100%;
		height: 100%;
	}

	#header #mobile {
		width: 60px;
		height: 59px;
		margin-top: -1px;
		margin-right: -15px;
		background-color: #272360;
		border-left: 5px solid #e40713;
		font-size: 24px;
		color: #fff;
		justify-content: center;
		align-items: center;
		display: flex;
		float: right;
	}

	#header .menu, #header.fixed .menu {
		width: 100%;
		height: calc(100% - 122px);
		padding: 100px 0;
		opacity: 0;
		transform: translateY(20px);
		pointer-events: none;
		flex-direction: column;
		justify-content: space-between;
		transition: all .28s ease;
		position: fixed;
		top: 122px;
		left: 0;
	}

	#header .menu.active {
		opacity: 1;
		transform: translateY(0);
		pointer-events: all;
	}

	#header .menu li {
		margin: 0;
	}

	#header .menu li a {
		padding: 20px;
	}

	#header .menu::before {
		display: none;
	}

	#intro {
		margin-top: 0;
	}

	#intro .content {
		top: calc(50% + 30px);
		width: 100%;
	}

	#intro .content p:nth-child(1) {
		font-size: 22px;
	}

	#intro .content p:nth-child(2) {
		font-size: 40px;
	}

	#intro .content p:nth-child(3) {
		font-size: 18px;
	}

	#main {
		padding-bottom: 40px;
		margin-top: 144px;
	}

	.home #main {
		margin-top: 640px;
	}

	#main .page-title {
		font-size: 22px;
	}

	#main #shortcuts {
		width: calc(100% + 20px);
		height: auto;
		margin-left: -10px;
	}

	#main #shortcuts::before {
		display: none;
	}

	#main #shortcuts a {
		width: 100%;
		height: auto;
		padding: 20px 10px;
		flex-direction: column;
	}

	#main #shortcuts a:first-child {
		border-bottom: 2px solid #fff;
	}

	#main #shortcuts a .icon {
		width: 100px;
		height: 100px;
		margin-bottom: 10px;
	}

	#main #shortcuts a:first-child .icon {
		margin-right: 0;
	}

	#main #shortcuts a .text span {
		font-size: 24px;
		text-align: center;
	}

	#main #shortcuts a .text strong {
		font-size: 18px;
		text-align: center;
	}

	#main #shortcuts a:last-child {
		flex-flow: column;
	}

	#main #shortcuts a:last-child .icon {
		margin-left: 0;
	}

	#main #about {
		display: block;
		margin-bottom: 20px;
	}

	#main #about .block:first-child, #main #about .block:last-child {
		width: 100%;
		padding-right: 0;
		padding-left: 0;
	}

	#main #about .block h1 {
		font-size: 24px;
	}

	#main #about #spec {
		width: 100%;
		text-align: center;
		margin-top: 20px;
		margin-bottom: 20px;
		justify-content: space-around;
	}

	#main #about #spec p {
		margin-right: 0;
	}

	#main #cta {
		padding: 10px;
		margin: 20px 0;
		flex-direction: column;
	}

	#main #cta .info {
		width: 100%;
		flex-direction: column;
	}

	#main #cta .icon {
		width: 90px;
		min-width: 90px;
		height: 90px;
		margin-right: 0;
	}

	#main #cta .text p:first-child {
		margin-bottom: 0;
		font-size: 26px;
		line-height: 34px;
		text-align: center;
	}

	#main #cta .text strong {
		width: auto;
		display: inline-block;
		float: none;
	}

	#main #cta .text p:last-child {
		font-size: 18px;
		text-align: center;
		margin-bottom: 20px;
	}

	#contact {
		display: block;
	}

	.wpcf7 form {
		flex-direction: column;
	}

	.wpcf7 .block:nth-child(1), .wpcf7 .block:nth-child(2), .wpcf7 .block:nth-child(3), .wpcf7 .block:nth-child(4) {
		width: 100%;
		padding-right: 0;
	}

	.wpcf7 .block:nth-child(3), .wpcf7 .block:nth-child(4) {
		margin-top: 5px;
	}

	#main #features {
		width: 100%;
		transform: none;
		flex-direction: column;
		position: static;
	}

	#main #features .block {
		width: 100%;
		padding-right: 0;
		margin-bottom: 30px;
		border-bottom: 2px solid #f6f6f6;
	}

	.block .seal {
		padding-top: 20px;
	}

	#main #features .block:last-child {
		margin-bottom: 0;
	}

	#main #features .block .content {
		margin-bottom: 20px;
		display: flex;
		align-items: center;
		margin-top: 15px;
		padding-bottom: 0
	}

	#main #features .block .content .number {
		font-size: 50px;
		margin-right: 15px;
		letter-spacing: -1px;
	}

	#main #features .block .seal .icon {
		width: 40px;
		height: 40px;
		margin-right: 15px;
	}

	#main #features .block .content .text p {
		font-size: 21px;
		hyphens: initial;
	}

	#main #features .block .content .text strong {
		font-size: larger;
	}

	#main #blog {
		margin-top: 40px;
	}

	#main #blog .block:first-child, #main #blog .block:last-child {
		width: 100%;
		padding-right: 0;
		padding-left: 0;
	}

	#main #blog .block:last-child {
		text-align: center;
	}

	#main #blog .block:last-child figure, #main #blog .block:last-child .content {
		width: 100%;
	}

	#main #blog .block:last-child figure {
		margin-bottom: 10px;
	}

	#main #blog .block h4 {
		margin-top: 20px;
		text-align: left;
	}

	#main #blog .block:last-child .content h3 {
		font-size: 22px;
		text-align: left;
	}

	#main #blog .block p {
		font-size: 16px;
		line-height: 1.25;
	}

	#main .sheet {
		padding: 10px;
	}

	#main .sheet figure {
		width: 100%;
		margin-bottom: 10px;
		position: static;
	}

	#main .sheet .content {
		width: 100%;
	}

	#main .sheet .content h3 {
		font-size: 22px;
	}

	#main .sheet .content h3 span {
		font-size: 16px;
	}

	#main .sheet .content h5 {
		width: 100%;
	}

	#main .sheet .button.big {
		margin-bottom: 20px;
	}

	#main .wp-block-columns {
		margin-bottom: 0;
	}

	#main .wp-block-columns .wp-block-image {
		margin-bottom: 20px;
	}

	.wp-block-separator.mb {
		margin-top: 20px;
		margin-bottom: 20px;
	}

	#main .wp-block-columns .wp-block-column h3 {
		font-size: 18px;
	}

	#main .wp-block-columns .wp-block-column h3:last-child {
		margin-bottom: 20px;
	}

	#main .wp-block-columns .wp-block-column h3 img {
		width: 50px;
		min-width: 50px;
		max-width: 50px;
	}

	#main #temario .block {
		margin-top: 10px;
	}

	#main #temario .block .tabs {
		width: 100%;
		position: static;
	}

	#main #temario .block .title {
		padding: 10px;
	}

	#main #temario .block .title h4 {
		font-size: 16px;
		white-space: nowrap;
		overflow-x: scroll;
	}

	#main #temario .block .title:first-child, #main #temario .block .title:last-child {
		border-radius: 0;
	}

	#main #temario .block .title i {
		display: none;
	}

	#main #temario .block .title.active {
		border-right: 1px solid #eaeaea;
	}

	#main #temario .block .temario {
		width: 100%;
	}

	#main #temario .block .content {
		padding: 10px;
		margin-top: -1px;
		margin-left: 0;
		border-radius: 0;
	}

	#main #timeline.visible {
		width: 80%;
		margin-left: 10%;
	}

	#main #timeline .item {
		position: static;
	}

	.blog #main #blog {
		margin-bottom: 0;
	}

	.blog #main #blog .block article {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	#main #blog .block h3 {
		margin-top: 10px;
		font-size: 22px;
	}

	.single #main .wrapper {
		flex-direction: column;
	}

	.single #main .block:nth-child(1), .single #main .block:nth-child(2), .single #main .block:nth-child(3) {
		width: 100%;
		padding-right: 0;
		padding-left: 0;
	}

	.single #main .block:nth-child(1) .sticky .share {
		transform: none;
		margin-bottom: 20px;
	}

	.single #main .block:nth-child(3) {
		margin-top: 20px;
	}

	#contact .wrapper {
		padding: 30px;
	}

	#contact .close {
		width: 20px;
		height: 20px;
		top: 5px;
		right: 5px;
	}

	#footer {
		padding-top: 40px;
	}

	#footer > .wrapper {
		padding-bottom: 20px;
	}

	#footer .wrapper .block, #footer .wrapper .block:nth-child(2) {
		width: 100%;
		padding-bottom: 40px;
		margin-bottom: 40px;
		border-bottom: 2px solid rgba(255, 255, 255, 0.5);
		float: left;
	}

	#footer .wrapper .block:nth-child(3) {
		padding-bottom: 0;
		border-bottom: 0;
	}

	#footer .wrapper .block:last-child h4 {
		text-align: left;
	}

	#footer .wrapper .block:last-child h4::after {
		float: left;
	}

	#footer .wrapper .block:last-child ul li {
		text-align: left;
	}

	#footer #bottom .wrapper {
		height: auto;
		padding: 20px 0;
		flex-direction: column;
		background-color: #272360;
	}

	#footer #copy, #footer #legal {
		width: 100%;
		text-align: center;
		margin-bottom: 10px;
		position: static;
		transform: none;
	}

	#footer #legal li {
		float: none;
		display: inline-block;
	}

	#footer #lasastreria {
		margin-top: 10px;
	}

	#main #inscripcion .wpcf7 form > div, #main #inscripcion .wpcf7 form > div.priv {
		width: 100%;
		margin-right: 0;
		margin-left: 0;
	}

	#main #inscripcion .wpcf7 form > div.priv label {
		display: flex;
	}

	#main #shortcuts a:last-child .text strong:last-child {
		margin: 20px auto 0;
	}

	#main #pruebas .wrapper>div {
		grid-template-columns: 1fr;
	}

	#main #pruebas table {
		width: 100%;
	}

	.single #main .block:nth-child(3) #banner{
		height: auto;
	}

	.single #main .block:nth-child(3) #banner > div{
		display: flex;
		flex-direction: column;
	}

	.single #main .block:nth-child(3) #banner >div p{
		text-align: center;
	}
	
	.single #main .block:nth-child(3) #banner > div a{ 
		width: fit-content;
	}

}

@media only screen and (max-width:850px) {

	#main .horario {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	#main #blog .block:last-child .content {
		padding-top: 20px;
		padding-inline: 0;
	}

}