html,
body {
	min-height: 100%;
}

html {
	padding: 0;
	background: #fdfdfd
}

body {
	padding: 0;
	text-align: center;
}

@media all and (min-width:1px) {
	html {
		background: #fdfdfd fixed;
		background-size: cover
	}

	body {
		background: none
	}
}

#lbOverlay {
	background: #f3f3f3
}

#content {
	width: 100%;
	max-width: 1230px;
	min-width: 300px;
	margin: 0 auto;
	text-align: left;
	position: relative;
	padding-bottom: 21px
}

#main-wrapper {
	padding: 0 25px 1px 305px;
	background: #fff url(_escolares_left_column.gif) repeat-y 0 0;
	box-shadow: rgba(0, 0, 0, 0.4) 0 3px 8px
}

.no-nav #main-wrapper {
	padding-left: 25px;
	background: #fff
}

#main {
	width: 100%;
	padding-top: 10px
}

#header,
#emptyHeader {
	border: none;
	padding: 40px 210px 20px 20px;
	background: none;
	font-size: 2em
}

#emptyHeader {
	height: 42px
}

#headerContent {
	color: #FFF;
	text-shadow: 1px 1px 1px #FFF;
	font-weight: 600
}

#nodeDecoration {
	padding: 0 30px 0 0;
	margin: 0 0 25px 0;
	border: none;
	text-shadow: none;
	background: none;
	border-bottom: 2px solid #257E0E;
	background: url(_escolares_logo.png) no-repeat 100% 50% !important
}

#nodeTitle {
	color: #53A63D;
	letter-spacing: .5px;
	font-size: 1.7em;
	font-weight: bold;
	margin-right: 2.3em
}

#siteFooter {
	padding: 5px 20px 20px 20px;
	text-align: right;
	margin-top: -56px
}

/* Navigation */
#skipNav {
	font-size: .95em;
	text-align: center;
	padding-top: 25px
}

#skipNav a {
	padding: 5px 15px;
	background: #3a4749
}

#siteNav {
	width: 279px;
	float: left;
	padding-right: 20px;
	margin: 0px 0 70px 0;
}

#siteNav ul,
#siteNav li {
	margin: 0;
	padding: 0;
	list-style: none
}

#siteNav a {
	font-size: .95em;
	display: block;
	padding: 7px 10px 7px 20px;
	border-bottom: 1px solid #53A63D;
	color: #000;
	background: #98D688;
	font-weight: bold;
	text-decoration: none
}

#siteNav a:hover,
#siteNav a:focus {
	color: #000;
	background: #53A63D;
	border-color: #0a0806
}

#siteNav ul ul a {
	padding-left: 35px;
	font-size: .9em;
	background: #D0EBC9;
	border-color: #98D688;
	color: #444444
}

#siteNav ul ul a:hover,
#siteNav ul ul a:focus {
	background: #98D688;
	border-color: #53A63D;
	color: #3a4749;
	text-decoration: underline
}

#siteNav .active {
	color: #000;
	text-decoration: none;
	background: #fff;
	border-color: #fff
}

#siteNav .active:hover {
	color: #000;
	text-decoration: none;
	background: #fff;
	border-color: #fff;
	cursor: none
}

#siteNav .other-section {
	display: none
}

#siteNav ul ul ul a {
	padding-left: 50px;
	background-color: #FEDCBD;
	color: #3a4749
}

/* Pagination */
.pagination {
	text-align: right;
	font-size: .95em
}

.pagination .sep {
	display: none
}

.pagination a {
	display: block;
	position: absolute;
	right: 52px;
	width: 32px;
	height: 32px;
	padding: 0;
	background: url(_escolares_nav_icons.png) no-repeat 0 0
}

body .pagination a {
	filter: alpha(opacity=100);
	opacity: 1;
	outline: none
}

.pagination a span span {
	display: none
}

.pagination a span {
	position: absolute;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	height: 0
}

#topPagination {
	position: absolute;
	top: 58px;
	width: 100%;
	z-index: 101;
}

#topPagination .prev {
	margin-left: 18px
}

#topPagination .pagination {
	text-align: right
}

#bottomPagination {
	padding: 20px 20px 71px 300px;
	margin-bottom: 40px;
}

.no-nav #bottomPagination {
	padding-left: 20px
}

.pagination .next,
.pagination .next:hover,
.pagination .next:focus {
	right: 10px;
	background-position: -50px 0
}

/* Page counter */
#topPagination .page-counter {
	margin-left: 16px
}

#bottomPagination .page-counter {
	margin-left: 20px;
	margin-right: 0
}

.pagination.page-counter {
	text-align: center
}

.pagination.noprt .sep {
	display: none
}

.pagination.noprt .page-counter {
	margin-right: 20px
}

#topPagination .page-counter {
	margin-left: 20px;
	margin-right: 0
}

.pagination .page-counter {
	position: absolute;
	line-height: 27px;
	padding: 0;
	right: 206px
}

#exe-client-search-form {
	padding: 10px 0px 0px 0px;
	margin: 0;
	font-size: .95em;
	display: flex;
	justify-content: flex-end;
}

@media all and (min-width:1230px) {

	#bottomPagination,
	#siteFooter {
		right: 0
	}

	#topPagination {
		right: 0
	}

	#header {
		padding-left: 0
	}
}

/* Autoclear */
/*#content{overflow:auto}*/
#content {
	overflow: inherit
}

/* Specific rules and impromevemts for Infantil style*/
#header-options {
	margin: 20px 0 0;
	position: absolute;
	top: 2em;
	right: 100px;
	z-index: 100
}

#toggle-nav {
	font-size: 1.2em;
	margin-left: 15px;
	margin-right: 8px;
	background: transparent url(_escolares_menu.gif) no-repeat 5px 50%;
	padding: 5px 10px 0 32px;
	color: #444;
	padding-bottom: 7px;
}

#header-options a:hover,
#header-options a:focus {
	color: rgb(124, 63, 6)
}

#exe-client-search-text {
	max-width: 100%
}

.exe-client-search-result {
	background: rgb(236, 208, 120);
	padding: 0 2px
}

a .exe-client-search-result {
	color: #00566a
}

#siteNav {
	position: fixed;
	top: 0px;
}

body.no-nav #headerContent {
	padding-left: 0px;
}

#topPagination,
#header-options,
#nodeTitle {
	padding-top: 0px;
}

#topPagination .pagination {
	text-align: right;
	position: absolute;
	top: -40px;
	right: 0px;
	z-index: 90;
	width: 300px;
}

#header-options {
	right: 0;
	left: 0px;
	top: -10px;
	margin: 0px;
	background-color: #FFFFFF;
	padding-top: 20px;
	padding-bottom: 10px;
	z-index: 90;
	height: 40px;
	border-bottom: 1px solid #d8f3f4;
}

.pagination .page-counter {
	right: 100px
}

#headerContent {
	top: 0;
	left: 0;
	right: 0;
	justify-content: center;
	z-index: 101;
	background: rgba(255, 255, 255, 1);
	max-width: 1230px;
	min-width: 300px;
	text-align: center;
	max-height: 60px;
	border-left: 20px;
	font-size: 0.9em;
	overflow: hidden;
	text-overflow: ellipsis;
}

#header {
	align-items: center;
	padding: 0px;
	border: 20%;
}

#header #headerContent svg {
	fill: var(--white);
	margin-right: 5px;
	transition: transform 0.3s;
}

#main-wrapper #section {
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	height: 100vh;
}

#page-main #section::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(153, 153, 153, 0.5);
}

/*TO review*/
.fijo #headerContent {
	position: absolute;
}

#topPagination .pagination .page-counter,
#bottomPagination .pagination .page-counter {
	color: #53A63D;
	font-weight: bold;
}

/* accessibility icon position */
#header-options a#access {
	left: 180px;
	background-position: 0;
	top: 20px;
}

#header-options a#highcontrast {
	left: 260px;
	background-position: -64px;
}

#header-options a#typo {
	left: 305px;
	background-position: -97px;
}

#header-options a#zoomout {
	left: 350px;
	background-position: -129px;
}

#header-options a#zoomin {
	left: 395px;
	background-position: -160px;
}

#header-options a#speak {
	left: 440px;
	background-position: -192px;
}

#header-options a#reset {
	left: 480px;
	background-position: -311px;
}

.typobox {
	left: 305px;
}

#siteNav>ul,
#siteNav>li {
	margin-top: -10px;
}

#header-options {
	z-index: 101;
}

#logoexelarium {
	margin: -5px 0 -5px 0;
}

@media all and (max-width:768px) {
	#content {
		width: 100%;
		border: none;
		margin: 0
	}

	#main-wrapper {
		background: #fff
	}

	#header,
	#emptyHeader {
		padding-left: 20px;
		padding-right: 20px;
		background-position: 50% 23px
	}

	#exe-client-search-text {
		max-width: 70%
	}

	#bottomPagination,
	.no-nav #bottomPagination {
		padding: 20px 20px 0 20px
	}

	#siteNav {
		float: none;
		width: 100%;
		padding: 0;
		margin: 0;
		font-size: .95em;
		position: relative;
		top: 50px
	}

	#siteNav a {
		padding: 10px 20px
	}

	#siteNav ul ul a {
		padding-left: 40px
	}

	#siteNav ul ul ul a {
		padding-left: 60px
	}

	#main-wrapper,
	.no-nav #main-wrapper {
		padding-left: 20px;
		padding-right: 20px
	}

	#siteFooter,
	.no-nav #siteFooter {
		padding: 20px;
		text-align: center;
		margin: 0
	}

	#content .exe-col {
		float: none;
		width: 100%;
		padding: 0
	}

	iframe,
	object,
	embed {
		max-width: 100%
	}

	img,
	video {
		max-width: 100%;
		height: auto
	}

	.pagination {
		text-align: center;
		height: 35px;
		position: relative
	}

	#topPagination .pagination .page-counter {
		display: none;
	}

	#topPagination .pagination {
		width: 90px;
	}

	#header-options {
		position: relative;
		top: 0;
		left: 0;
		margin: 0;
		background: #FFF;
		font-size: .95em;
		/*height: 50px;*/
	}

	#header-options a {
		margin-left: 0;
		display: block;
		color: #3a4749;
		border-bottom: 0px solid #dbdbdb;
		line-height: 2.6em;
		letter-spacing: 1px;
		padding: 0;
	}

	#header-options a span {
		background: url(_escolares_menu.gif) no-repeat 18px 50%;
		padding-left: 45px
	}

	#header-options #print-page {
		display: none
	}

	#header-options #toggle-nav {
		background: none;
		z-index: 90;
		width: 150px;
	}

	#bottomPagination .page-counter {
		margin: 0;
		padding-top: 5px;
		display: inline-block
	}

	#headerContent {
		visibility: hidden;
	}

	#header {
		height: 0px;
	}

	#header-options {
		padding-top: 0px;
		padding-bottom: 0px;
		position: absolute;
		top: 0px;
	}

	#exe-client-search-form {
		padding: 45px 0px 0px 0px;
	}

	/*accessibility icon position */
	#header-options a#access {
		left: 50%;
		background-position: 0;
		top: 10px
	}

	#header-options a#highcontrast {
		left: calc(50% - 115px);
		background-position: -64px;
		top: 57px
	}

	#header-options a#typo {
		left: calc(50% - 70px);
		background-position: -97px;
		top: 57px
	}

	#header-options a#zoomout {
		left: calc(50% - 25px);
		background-position: -129px;
		top: 57px
	}

	#header-options a#zoomin {
		left: calc(50% + 20px);
		background-position: -160px;
		top: 57px
	}

	#header-options a#speak {
		left: calc(50% + 65px);
		background-position: -192px;
		top: 57px
	}

	#header-options a#reset {
		left: calc(50% + 110px);
		background-position: -311px;
		top: 57px
	}

	.typobox {
		left: calc(50% - 70px);
		top: 95px;
	}

	#topPagination {
		top: 52px
	}

	#logoexe {
		display: block;
		margin-left: auto;
		margin-right: auto;
		width: 50%;
	}

	#logoexelarium {
		display: none;
	}

	#bottomPagination .pagination .page-counter {
		display: none;
	}

	#header-options:has(a#highcontrast.ocultar) {
		height: 50px;
	}

	#header-options:not(:has(a#highcontrast.ocultar)) {
		height: 100px;
	}

	#nodeTitle {
		padding-top: 15px;
	}

	#siteNav>ul,
	#siteNav>li {
		margin-top: 0px;
	}

	/*.ocultar #header-options {height: 0px;}*/
}

@media print {

	#header,
	#emptyHeader {
		margin: 0;
		padding-top: 30px;
		padding-left: 0
	}

	#siteNav,
	#header-options,
	.noprt,
	.toggle-idevice,
	#exe-client-search {
		display: none !important
	}

	#main-wrapper,
	.no-nav #main-wrapper {
		padding: 20px 0;
		box-shadow: none
	}

	body #main,
	body.no-nav #main {
		padding: 20px 0
	}

	body #content {
		background: #FFF
	}

	#content {
		max-width: 100%
	}
}

/* DarMode*/
.darkmode #siteNav a.darkmode:hover,
.darkmode #siteNav a.darkmode:focus {
	color: #000000 !important;
	background-color: #ffffff !important;
	border-color: #0a0806;
}

.darkmode #siteNav ul a {
	border-bottom-color: #FFF !important;
}

.darkmode nav#siteNav ul ul a.darkmode:hover,
.darkmode #siteNav ul ul a.darkmode:focus {
	background: #ffffff !important;
	border-color: #a63d65;
	color: #000000 !important;
	text-decoration: underline;
}

.darkmode #siteNav .active {
	color: #000000 !important;
	text-decoration: none;
	background: #ffffffdb !important;
	border-color: #fff;
}

.darkmode #siteNav .active:hover {
	color: #de6262;
	text-decoration: none;
	background: #c83bd8;
	border-color: #fff;
	cursor: none;
}

.darkmode #packageLicense {
	border-top-color: #FFF !important;
}

.darkmode .logosoficiales {
	filter: grayscale(100%) invert(100%) contrast(200%);
}