/**
Theme Name: Hispanica
Author: Pointus
Author URI: https://pointus.cz/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hispanica
Template: astra
*/

.fw-400 {
  font-weight: 400 !important;
}

.fw-500 {
  font-weight: 500 !important;
}

.fw-800 {
  font-weight: 800 !important;
}

.mt-auto {
  margin-top: auto !important;
}

.rw-20 ul {
  row-gap: 20px;
}

.align-center {
  text-align: center !important;
}

.no-underline a {
  text-decoration: none !important;
}

.color-inherit a {
  color: inherit !important;
}

.position-relative .e-con-inner {
  position: relative;
}

.fit-content {
  width: fit-content;
}

.single-his_course .ast-container {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

@media (max-width:1024px) {
  .tablet-position-relative {
    position: relative !important;
    bottom: unset !important;
    left: unset !important;
    right: unset !important;
    top: unset !important;
  }
}

.elementor-slideshow__footer {
	display:none;
}

/* =========================
   Responsive helpers
========================= */
@media (max-width: 767px) {
  .hide-on-mobile { display: none; }
}

@media (min-width: 768px) {
  .hide-on-tablet-desktop { display: none; }
}

@media (max-width: 1024px) {
  .hide-on-tablet { display: none; }
}

@media (min-width: 1025px) {
  .hide-on-desktop { display: none; }
}

/* =========================
   Header
========================= */
.main-header-menu .sub-menu {
  width: 300px;
  background-color: #F9F9F9;
  border-top: none;
  text-transform: none !important;
}

#primary-site-navigation-desktop .sub-menu a {
  line-height: 1.3em;
  padding: 15px 20px;
}

.ast-menu-toggle {
	padding: 0 15px !important;
	box-shadow: none;
	border: none !important;
}

.ast-menu-toggle:focus {
	outline:0 !important;
}

.ast-menu-toggle .ast-arrow-svg {
	margin-left: 0 !important;
}

.lang-item img {
	width: 20px;
    height: auto;
}

@media (min-width:1222px) {
	.lang-item img {
	margin-bottom: 5px;
	}
}

/* =========================
   Footer
========================= */
.before-footer ul {
  padding: 0;
  list-style-type: none;
  margin: 0;
}

.before-footer .elementor-widget-image.elementor-hidden-desktop {
  text-align: center;
}

/* =========================
   Hero
========================= */
.hero {
  padding: 120px 20px;
}

@media (max-width:1024px) {
  body:not(.home) .hero:not(.about-us) {
    padding-bottom: 60px;
  }
}

/* =========================
   Homepage
========================= */
.home .hero h1 strong {
  color: var( --e-global-color-primary );
}

@media (max-width:1120px) {
  .misaligned-image-section .elementor-widget-image {
    margin-bottom: 0 !important;
}
}

.js-counter {
  font-size: 3rem;
  font-weight: 800;
}

.testimonial strong {
  font-weight: 500;
}

.testimonial::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -25px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 25px solid;
}

.testimonial.light-red::after {
  border-top-color: #FFF2F2;
}

.testimonial.light-yellow::after {
  border-top-color: #FFF7E9;
}

.testimonial.light-green::after {
  border-top-color: #F4FFF4;
}

@media (max-width:1100px) {
  .dele-hero {
    position: relative;
    width: 100%;
    bottom: unset !important;
    left: unset !important;
  }
}

.dele-months {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
  row-gap: 5px;
	align-items: center;
}

@media (max-width:767px) {
  .dele-months {
    justify-content: center;
  }
}

.dele-month-item {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding-left: 15px;
	color: #ffffff;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.3em;
	text-transform: uppercase;
	white-space: nowrap;
}

.dele-month-item::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 11px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='11' viewBox='0 0 6 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.75 0.75L4.71967 4.71967C5.01256 5.01256 5.01256 5.48744 4.71967 5.78033L0.75 9.75' stroke='white' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}

.dele-month-item:hover {
  color: #fff !important;
}

/* =========================
   About us
========================= */
@media (max-width:767px) {
  .gallery-1-col-mobile .gallery-item {
    max-width: 100% !important;
  }
}

/* =========================
   Contact
========================= */
@media (min-width:2300px) {
  .hero.contact {
    background-size: cover !important;
  }
}

/* =========================
   Contact form
========================= */
form.forminator-custom-form {
  display: block !important;
}

input, textarea {
  padding: 20px !important;
  border-radius: 13px !important;
  font-size: 1.2rem !important;
}

form label {
  margin-bottom: 10px !important;
  font-size: 1.2rem !important;
}

form #html-1, .forminator-row-last {
  text-align: center;
}

form #html-1 {
  margin-top: 20px;
}

form #html-1 p {
  margin-bottom: 0 !important;
}

.forminator-button-submit {
  border-radius: 13px !important;
  font-size: 1.2rem !important;
  font-weight: 500 !important;
  padding: 8px 22px !important;
  box-shadow: none !important;
}

/* =========================
   Courses
========================= */
@media (min-width:1025px) and (max-width:1550px) {
  .courses-hero {
    background-size: 100% !important;
}
}

.lang-level-item a {
  text-decoration: none !important;
}

.lang-level-item {
    position: relative;
}

.lang-level-item:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 27px;
    right: -30px;
    transform: translateY(-50%);
    width: 22px;
    height: 20px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='20' viewBox='0 0 22 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.908569 9.69211H19.9393M12.6198 0.908691L20.3681 8.65697C20.9398 9.22866 20.9398 10.1556 20.3681 10.7272L12.6198 18.4755' stroke='%23193531' stroke-width='1.81725' stroke-linecap='round'/%3E%3C/svg%3E");
}

@media (max-width: 1024px) {
  .lang-level-item:not(:last-child)::after {
    top: auto;
    right: auto;
    left: 50%;
    bottom: -40px;
    transform: translateX(-50%) rotate(90deg);
  }
}

.course-faq summary {
  background-color: var(--e-global-color-c43df5b);
  border: none !important;
  padding: 30px !important;
  border-radius: 13px !important;
}

.custom-course-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* =========================
   Lang levels
========================= */
.his-badge {
	color: #fff;
	background: #b2b2b2;
  text-decoration: none !important;
}

.his-badge:hover {
  color: #fff !important;
}

.a0
{
    background-color: #b2b2b2;
    color:white;
}

.a0a1, .a11
{
    background: linear-gradient(90deg, #b2b2b2 50%, #e22f31 50%);
    color:white;
}
.cze .a11
{
    background: linear-gradient(90deg, #b2b2b2 75%, #e22f31 25%);
}

.a1, .a12, .cze .a14
{
    background-color: #e22f31;
    color:white;
}
.cze .a12
{
    background: linear-gradient(90deg, #b2b2b2 50%, #e22f31 50%);
    color:white;
}
.cze .a13
{
    background: linear-gradient(90deg, #b2b2b2 25%, #e22f31 0%);
    color:white;
}

.a1a2
{
    background: linear-gradient(90deg, #e22f31 50%, #FF828C 50%);
    color:white;
}
.a21
{
    background: linear-gradient(90deg, #e22f31 66%, #FF828C 34%);
    color:white;
}
.cze .a21
{
    background: linear-gradient(90deg, #e22f31 75%, #FF828C 25%);
    color:white;
}
.a22
{
    background: linear-gradient(90deg, #e22f31 34%, #FF828C 0%);
    color:white;
}
.cze .a22
{
    background: linear-gradient(90deg, #e22f31 50%, #FF828C 0%);
    color:white;
}

.a2, .a23, .cze .a24
{
    background-color: #FF828C;
    color:white;
}

.cze .a23
{
    background: linear-gradient(90deg, #e22f31 25%, #FF828C 0%);
    color:white;
}

.a2b1
{
    background: linear-gradient(90deg, #FF828C 50%, #F6B115 50%);
    color:white;
}
.b11
{
    background: linear-gradient(90deg, #FF828C 66%, #F6B115 34%);
    color:white;
}
.b12
{
    background: linear-gradient(90deg, #FF828C 34%, #F6B115 0%);
    color:white;
}
.b1, .b13
{
    background-color: #F6B115;
    color:white;
}
.b1b2
{
    background: linear-gradient(90deg, #F6B115 50%, #F8C552 50%);
    color:white;
}
.b21
{
    background: linear-gradient(90deg, #F6B115 66%, #F8C552 34%);
    color:white;
}
.b22
{
    background: linear-gradient(90deg, #F6B115 34%, #F8C552 0%);
    color:white;
}
.b2, .b23
{
    background-color: #F8C552;
    color:white;
}
.b2c1
{
    background: linear-gradient(90deg, #F8C552 50%, #38A42D 50%);
    color:white;
}
.c11
{
    background: linear-gradient(90deg, #F8C552 66%, #38A42D 34%);
    color:white;
}
.c12
{
    background: linear-gradient(90deg, #F8C552 34%, #38A42D 0%);
    color:white;
}
.c1, .c13
{
    background-color: #38A42D; 
    color:white;
}
.c1c2
{
    background: linear-gradient(90deg, #38A42D 50%, #6CBC63 50%);
    color:white;
}
.c21
{
    background: linear-gradient(90deg, #38A42D 66%, #6CBC63 34%);
    color:white;
}
.c22
{
    background: linear-gradient(90deg, #38A42D 34%, #6CBC63 0%);
    color:white;
}

.c2, .c23
{
    background-color: #6CBC63; 
    color:white;
}

.b2-c2
{
    background: linear-gradient(90deg, #F3C447 20%, #38A42D 60%, #6CBC63 100%);
}

.his-courses-table {
	width: 100%;
	min-width: 100px;
	border-collapse: separate;
	border-spacing: 0;
	background: #fff;
	border-radius: 13px;
	overflow: hidden;
	border: none !important;
}

.his-courses-table thead th {
	background: var(--e-global-color-c43df5b);
	padding: 20px 10px;
	font-weight: 400;
	font-size: 1rem;
	text-align: center;
}

.his-courses-table thead th:first-child {
	border-bottom-left-radius: 13px;
}

.his-courses-table thead th:last-child {
	border-bottom-right-radius: 13px;
}

.his-courses-table tbody td {
	padding: 20px 10px;
	font-size: 1rem;
	line-height: 1.3em;
	vertical-align: middle;
	border: none;
	text-align: center;
	border-bottom: 1px solid #E0E0E0;
}

.his-courses-table tbody tr:hover td {
	background: var(--e-global-color-c43df5b);
}

/* =========================
   DELE
========================= */
.his-serr-table-wrap, .his-dele-price-table-wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.his-serr-table, .his-dele-price-table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
  border: none;
}

.his-serr-table th,
.his-serr-table td,
.his-dele-price-table th,
.his-dele-price-table td {
	padding: 26px 20px;
	border-bottom: 1px solid #E0E0E0;
	text-align: center;
	vertical-align: middle;
  border-right: none;
}

.his-serr-table thead th,
.his-dele-price-table thead th {
	font-size: 1rem;
	line-height: 1.3em;
	font-weight: 700;
}

.his-serr-table tbody td {
	font-size: 1rem;
	line-height: 1.3em;
}

.his-serr-table tbody tr:last-child td {
	border-bottom: none;
}

.his-serr-table td:first-child,
.his-serr-table th:first-child {
	width: 26%;
}

.his-serr-table td:nth-child(2),
.his-serr-table th:nth-child(2),
.his-serr-table td:nth-child(3),
.his-serr-table th:nth-child(3) {
	width: 37%;
}

.his-serr-table td[rowspan] {
	vertical-align: middle;
}

.his-serr-cell {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 4px;
}

.his-serr-separator,
.his-dele-price-level__separator {
	font-size: 1rem;
	line-height: 1;
	font-weight: 700;
	color: #000;
}

@media (max-width: 767px) {
	.his-serr-table {
		min-width: 760px;
	}

	.his-serr-table th,
	.his-serr-table td {
		padding: 20px 14px;
	}

	.his-serr-table thead th {
		padding-bottom: 20px;
	}
}

.his-dele-price-table thead th {
  text-align: left;
}

.his-dele-price-table thead th:last-child {
	text-align: right;
}

.his-dele-price-table__price {
	text-align: right !important;
	white-space: nowrap;
	font-size: 1rem;
	line-height: 1.3;
	color: #111;
	width: 180px;
}

.his-dele-price-levels {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 18px 28px;
}

.his-dele-price-level {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 1rem;
	line-height: 1.3;
	color: #203b39;
}