/* ----- GLOBAL ----- */
:root {
  --color-primary: #740000;
  --color-black: #000000;
  --color-white: #ffffff;
  --color-error: #e74c3c;
  --color-success: #2ecc71;
  --font-ballet: 'Ballet';
  --font-martian-mono: 'Martian Mono';
  --font-inter: 'Inter';
}

* {
  letter-spacing: 0 !important;
}

.font-ballet {
  font-family: var(--font-ballet) !important;
  position: relative !important;
  top: -6px !important;
  left: -6px !important;
}

.pagina-politica{
    max-width: 600px;
    margin: auto !important;
}

.reproductor-video-intro img{
    cursor: pointer !important;
    transition: all 0.3s ease-in-out !important;
}

.reproductor-video-intro img:hover{
    transform: scale(1.01) !important;
}

/* ----- HEADER ----- */
.fusion-mobile-nav-holder {
  display: none !important;
}


.fusion-header .fusion-menu > li span {
  font-weight: 400 !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
}

.menu-adhoc{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 35px;
}

.fusion-logo img{
    width: 150px !important;
}


.menu-adhoc .start-now-link{
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
    padding: 10px 30px !important;
    border-radius: 10px !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    font-family: var(--font-martian-mono) !important;
}

header {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  background: var(--color-white) !important;
  transition: all 0.3s ease-in-out !important;
  box-shadow: none !important;
}
.home header {
  position: fixed !important;
  background: transparent !important;
  box-shadow: none !important;
}
.fusion-header {
  background: transparent !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

header.scrolled {
  background: var(--color-white) !important;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) !important;
}


header .fusion-row {
  display: flex !important;
  width: 100% !important;
  justify-content: space-between !important;
  align-items: center !important;
}
header .fusion-row::before,
header .fusion-row::after {
  content: none !important;
}

header .adhoc-burger-menu {
  display: none !important;
  visibility: hidden !important;
}

.burger {
  position: relative !important;
  width: 40px !important;
  height: 20px !important;
  background: transparent !important;
  cursor: pointer !important;
  display: block !important;
}
.burger input {
  display: none !important;
}
.burger span {
  display: block !important;
  position: absolute !important;
  height: 2px !important;
  width: 100% !important;
  background: var(--color-primary) !important;
  border-radius: 9px !important;
  opacity: 1 !important;
  left: 0 !important;
  transform: rotate(0deg) !important;
  transition: 0.25s ease-in-out !important;
}
.burger span:nth-of-type(1) {
  top: 0px !important;
  transform-origin: left center !important;
}
.burger span:nth-of-type(2) {
  top: 50% !important;
  transform: translateY(-50%) !important;
  transform-origin: left center !important;
}
.burger span:nth-of-type(3) {
  top: 100% !important;
  transform-origin: left center !important;
  transform: translateY(-100%) !important;
}
.burger input:checked ~ span:nth-of-type(1) {
  transform: rotate(45deg) !important;
  top: -4px !important;
  left: 5px !important;
}
.burger input:checked ~ span:nth-of-type(2) {
  width: 0% !important;
  opacity: 0 !important;
}
.burger input:checked ~ span:nth-of-type(3) {
  transform: rotate(-45deg) !important;
  top: 24px !important;
  left: 5px !important;
}

.adhoc-burger-menu .lateral-menu {
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: min(calc(100% - 100px), 400px) !important;
  height: 100dvh !important;
  z-index: 10 !important;
  background: white !important;
  padding: 20px !important;
  transition: all 200ms ease-in-out !important;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
}
.adhoc-burger-menu .lateral-menu.active {
  left: 0 !important;
}

.adhoc-burger-menu .lateral-menu-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 30px !important;
}
.adhoc-burger-menu .lateral-menu-header img {
  width: 120px !important;
  height: auto !important;
}

.adhoc-burger-menu .lateral-menu .adhoc-lateral-menu-container ul {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.adhoc-burger-menu .lateral-menu .adhoc-lateral-menu-container ul > li > a {
  color: black !important;
  transition: color 200ms ease-in-out !important;
  background-color: #fafafa !important;
  padding: 5px 20px !important;
  width: 100% !important;
  display: flex !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  font-family: var(--font-martian-mono) !important;
}
.adhoc-burger-menu .lateral-menu .adhoc-lateral-menu-container ul > li > a:hover {
  color: var(--color-primary) !important;
}
.adhoc-burger-menu .lateral-menu .adhoc-lateral-menu-container ul ul {
  padding-left: 20px !important;
}
.adhoc-burger-menu .lateral-menu .adhoc-lateral-menu-container ul ul > li > a {
  color: #555 !important;
}
.adhoc-burger-menu .lateral-menu a i {
  font-size: 20px !important;
  transition: color 200ms ease-in-out !important;
}
.adhoc-burger-menu .lateral-menu a:hover i {
  color: var(--color-primary) !important;
}

/* ----- FOOTER ----- */
.adhoc-footer {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 50px 0 !important;
}
.adhoc-footer a,
.adhoc-footer p {
  color: var(--color-black) !important;
  font-family: var(--font-inter) !important;
  margin: 0 !important;
}

.adhoc-footer .footer-links {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  border-bottom: 3px solid var(--color-black) !important;
  padding-bottom: 100px !important;
}
.adhoc-footer .footer-links .footer-link-nav {
  display: flex !important;
  gap: 20px !important;
}
.adhoc-footer .footer-links .footer-link-nav a {
  transition: all 0.3s ease-in-out !important;
  text-transform: uppercase !important;
  font-family: var(--font-martian-mono) !important;
}
.adhoc-footer .footer-links .footer-link-nav a:hover {
  color: var(--color-primary) !important;
}
.adhoc-footer .footer-links img {
  width: 150px !important;
  height: 100% !important;
}

.adhoc-footer .footer-legal {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding-top: 20px !important;
}
.adhoc-footer .footer-legal .footer-legal-links {
  display: flex !important;
  gap: 20px !important;
}
.adhoc-footer .footer-legal .footer-legal-links a {
  font-size: 12px !important;
  transition: all 0.3s ease-in-out !important;
  font-family: var(--font-martian-mono) !important;
}
.adhoc-footer .footer-legal .footer-legal-links a:hover {
  color: var(--color-primary) !important;
}
.adhoc-footer .footer-legal a {
  font-size: 12px !important;
  transition: all 0.3s ease-in-out !important;
  font-family: var(--font-martian-mono) !important;}


/* Single Post */

.pre-video {
    display: flex;
    position: relative;
}

.play-video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background-color: var(--blanco);
    width: 100px !important;
    height: auto !important;
    border-radius: 100%;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.single-post #main .fusion-row {
    max-width: 1000px !important;
    margin: auto !important;
}

.categorias-post {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.categorias-post a {
    background-color: var(--azul) !important;
    color: var(--blanco) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    border-radius: 20px !important;
    transition: all 0.3s !important;
}

.categorias-post a:hover {
    color: var(--azul) !important;
    background-color: #f1f1f1 !important;
}

.single-post-date {
    color: var(--celeste) !important;
    font-weight: 500 !important;
}

.post-title {
    color: var(--negro) !important;
    font-size: 30px !important;
    margin-top: 0px !important;
    margin-bottom: 25px !important;
}

.single-post-thumbnail {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 25px !important;
}

.main-single-post *{
    font-family: var(--font-martian-mono) !important;
}

.single-post-thumbnail img{
    object-fit: contain;
    border-radius: 5px;
    background-color: #fafafa;
    max-height: 400px;
}

.main-single-post .post-content h1 {
    color: var(--negro) !important;
    font-size: 26px !important;
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.main-single-post .post-content h2 {
    color: var(--negro) !important;
    font-size: 22px !important;
    margin-top: 5px !important;
    margin-bottom: 15px !important;

}

.main-single-post .post-content h3 {
    color: var(--negro) !important;
    font-size: 22px !important;
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.main-single-post .post-content h4 {
    color: var(--negro) !important;
    font-size: 20px !important;
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.main-single-post .post-content h5 {
    color: var(--negro) !important;
    font-size: 19px !important;
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.main-single-post {
    padding-bottom: 45px !important;
}

.posts-relacionados>h2 {
    font-size: 26px !important;
}

.main-single-post p,
.main-single-post li{
    font-size: 14px !important;
}
.single-related-posts {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 15px;
}

.related-post-title {
    color: var(--blanco);
    font-size: 20px !important;
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

.related-post-item {
    position: relative;
    height: 250px;
    background-size: cover;
    padding: 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: end;
}

.related-post-item::after {
    position: absolute;
    content: "";
    background-color: rgba(0, 0, 0, 0.359);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.content-related {
    position: relative;
    z-index: 99;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.content-related .post-fecha {
    font-size: 12px !important;
    color: var(--blanco) !important;
    font-weight: 500 !important;
}

.content-related .post-category {
    background-color: var(--celeste) !important;
    color: var(--blanco) !important;
    font-weight: 500 !important;
    width: fit-content !important;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 14px !important;
    border-radius: 50px !important;
}

.social-share-container {
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
    margin-bottom: 40px !important;
    width: 100% !important;
}

.social-share-container h3 {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    font-size: 20px !important;
}

.social-share-buttons {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.social-share-buttons img {
    height: 25px !important;
    width: auto !important;
}


/* ----- TEXTO ----- */
.texto h1,
.texto h2,
.texto h3,
.texto p {
  color: var(--color-black) !important;
  font-family: var(--font-martian-mono) !important;
  font-weight: 300 !important;
}

.texto h1,
.texto h2,
.texto h3 {
  text-transform: uppercase !important;
}

.texto p {
  line-height: 1.2 !important;
  color: hsl(0, 0%, 10%) !important;
}

.texto strong {
  font-weight: 800 !important;
}

.texto.inverso * {
  color: var(--color-white) !important;
}
.texto.inverso p {
  color: hsl(0, 0%, 90%) !important;
}

.texto p:first-child {
  margin-bottom: 5px !important;
}

/* ----- BOTON ----- */
.boton a,
.gform_button {
  display: inline-flex !important;
  background: var(--color-primary) !important;
  color: var(--color-white) !important;
  border-radius: 8px !important;
  border: 3px solid var(--color-primary) !important;
  font-size: var(--font-martian-mono) !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  font-family: var(--font-martian-mono) !important;
  padding: 11px 30px !important;
}
.boton.outline a {
  background: transparent !important;
  color: var(--color-black) !important;
  font-weight: 600 !important;
}
.boton.outline.inverso a {
  border-color: var(--color-white) !important;
  color: var(--color-white) !important;
}

/* ----- BANNER INFINITO ----- */
.marquee {
  width: fit-content !important;
  overflow: hidden !important;
}
.marquee__inner {
  width: 100% !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  animation: scroll-right 15s linear infinite !important;
  top: 0 !important;
}
.marquee__group {
  display: flex !important;
  gap: 40px !important;
  align-items: center !important;
  padding-left: 40px !important;
}
.item {
  color: var(--color-white) !important;
  white-space: nowrap !important;
  text-transform: uppercase !important;
  font-size: 32px !important;
  font-family: var(--font-martian-mono) !important;
}
.sep {
  color: var(--color-white) !important;
  font-size: 32px !important;
}
.marquee:hover .marquee__inner {
  animation-play-state: paused !important;
}
@keyframes scroll-right {
  from {
    left: calc(100% / 3 * -1);
  }
  to {
    left: 0;
  }
}

/* ----- GRID IMAGENES ----- */
.grid-imagenes {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  grid-template-rows: repeat(2, 1fr) !important;
  gap: 10px !important;
  border-radius: 0 50px !important;
  overflow: hidden !important;
}
.grid-imagenes .imagen-block {
  position: relative !important;
  height: 250px !important;
  cursor: pointer !important;
  user-select: none !important;
}
.grid-imagenes .imagen-block img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.grid-imagenes .imagen-block div {
  position: absolute !important;
  display: grid !important;
  place-content: center !important;
  color: var(--color-white) !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: #740000cc !important;
  opacity: 0 !important;
  transition: all 0.3s ease-in-out !important;
  font-family: var(--font-martian-mono) !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  font-weight: 300 !important;
}
.grid-imagenes .imagen-block div:hover {
  opacity: 1 !important;
}

/* ----- SECCION METHOD ----- */
.section-method {
  background-blend-mode: darken !important;
}

.method-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 20px !important;
  padding-top: 20px !important;
}
.method-grid .method-block {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.method-grid .method-block .method-img {
  width: 200px !important;
  height: 200px !important;
  border-radius: 50% !important;
  background: var(--color-white) !important;
  overflow: hidden !important;
}
.method-grid .method-block .method-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
.method-grid .method-block:first-child .method-img img {
  object-position: bottom left !important;
  padding-left: 50px !important;
  padding-bottom: 30px !important;
}
.method-grid .method-block:nth-child(3) .method-img img {
  object-position: top left !important;
  padding-left: 40px !important;
  padding-top: 20px !important;
}
.method-grid .method-block:last-child .method-img img {
  object-position: top !important;
  padding-top: 30px !important;
  padding-left: 20px !important;
  padding-right: 30px !important;
}
.method-grid .method-block h3 {
  font-family: var(--font-martian-mono) !important;
  color: var(--color-white) !important;
  font-size: 18px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  font-weight: 400 !important;
  margin-top: 40px !important;
}
.method-grid .method-block p {
  font-family: var(--font-martian-mono) !important;
  color: var(--color-white) !important;
  font-weight: 200 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  margin-top: 30px !important;
}
.method-grid .method-separator {
  display: flex !important;
  justify-self: center !important;
  margin-top: calc(100px - 5px / 2) !important;
  height: 5px !important;
  width: 40px !important;
  background: var(--color-white) !important;
}

/* ----- SECCION CURSOS ----- */
.grid-courses {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
}
.grid-courses .course-block {
  border: 3px solid var(--color-white) !important;
  padding: 80px 40px !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.grid-courses .course-block:first-child {
  border-bottom-left-radius: 50px !important;
}
.grid-courses .course-block:last-child {
  border-top-right-radius: 50px !important;
}
.grid-courses .course-block img {
  width: 100% !important;
  height: 500px !important;
  object-fit: contain !important;
  object-position: center !important;
}
.grid-courses .course-block .content {
  flex-grow: 1 !important;
}
.grid-courses .course-block h3 {
  font-family: var(--font-martian-mono) !important;
  color: var(--color-white) !important;
  font-size: 18px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  font-weight: 400 !important;
}
.grid-courses .course-block .price {
  display: block !important;
  font-family: var(--font-martian-mono) !important;
  color: var(--color-white) !important;
  font-size: 68px !important;
  text-align: center !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}
.grid-courses .course-block .info {
  display: flex !important;
  font-family: var(--font-martian-mono) !important;
  color: hsl(0, 0%, 70%) !important;
  text-align: center !important;
  font-size: 14px !important  ;
  line-height: 1.2 !important;
  margin-top: 10px !important;
  margin-bottom: 50px !important;
}
.grid-courses .course-block .boton a {
  width: 100% !important;
  justify-content: center !important;
  padding: 11px 20px !important;
}


.lp-profile-nav-tabs .orders,
.lp-profile-nav-tabs .quizzes{
    display: none !important;
}

.yith-wcmap .user-profile .user-avatar.avatar-upload:after{
    background-color: var(--color-primary) !important;
}

.dashboard-statistic__row .statistic-box[title="Total courses failed"]{
    display: none !important;
}

.learn-press-filters a[data-tab="failed"]{
    display: none !important;
}

#my-account-menu+div{
    border-top: 1px solid #eee !important;
    border: 1px solid #eee !important;
}

#my-account-menu+div .woocommerce-content-box{
    border: 1px solid #eee !important;
}

#my-account-menu+div .shop_table tr{
    border-bottom: 1px solid #eee !important;
    font-size: 14px !important;
}

.woocommerce-MyAccount-content h2, .woocommerce-MyAccount-content h3{
    border: 0px !important;
    font-size: 20px !important;
}

.woocommerce-column header, .avada-customer-details header{
    border: 0px !important;
    box-shadow: none !important;
}
/* ----- SECCION VALUES ----- */
.section-values {
  background-blend-mode: darken !important;
}

.values-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 20px !important;
}
.values-grid .value-block {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.values-grid .value-block .value-img {
  width: 200px !important;
  height: 200px !important;
  border-radius: 50% !important;
  background: var(--color-white) !important;
  overflow: hidden !important;
}
.values-grid .value-block .value-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
.values-grid .value-block:first-child .value-img img {
  object-position: bottom left !important;
  padding-left: 50px !important;
  padding-bottom: 30px !important;
}
.values-grid .value-block:nth-child(3) .value-img img {
  object-position: top left !important;
  padding-left: 40px !important;
  padding-top: 20px !important;
}
.values-grid .value-block:last-child .value-img img {
  object-position: top !important;
  padding-top: 30px !important;
  padding-left: 20px !important;
  padding-right: 30px !important;
}
.values-grid .value-block h3 {
  font-family: var(--font-martian-mono) !important;
  color: var(--color-white) !important;
  font-size: 18px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  font-weight: 400 !important;
  margin-top: 40px !important;
}
.values-grid .value-block p {
  font-family: var(--font-martian-mono) !important;
  color: var(--color-white) !important;
  font-weight: 200 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  margin-top: 30px !important;
}
.values-grid .value-separator {
  display: flex !important;
  justify-self: center !important;
  margin-top: calc(100px - 5px / 2) !important;
  height: 5px !important;
  width: 40px !important;
  background: var(--color-white) !important;
}
.values-grid .value-separator.hidden {
  visibility: hidden !important;
}

/* About us */

#main .bg-about-us{
    height: 550px !important;
    background-size: cover !important;
    background-position: top center !important;
}

.grid-about-info{
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
    padding-bottom: 30px !important;
}

.grid-about-info::after, .grid-about-info::before{
    display: none !important;
}

.grid-about-info .wpb_column{
    width: 100% !important;
}

.grid-about-info h3{
    font-size: 22px !important;
    font-weight: 600 !important;
}

.grid-about-info p{
    font-size: 14px !important;
    margin-bottom: 0px !important;
}


.grid-about-info .vc_column-inner{
    box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px !important;
    border-radius: 5px !important;
    padding: 10px !important;
}
/* -- WooCommerce -- */

.single-product #main{
    padding-top: 60px !important;
}

.single-product .summary h1{
    font-size: 36px !important;
    font-family: var(--font-martian-mono) !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
}

.single-product .summary .price{
    font-size: 36px !important;
    font-family: var(--font-martian-mono) !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
}

.single-product .summary p,
.single-product .summary ul li,
.single-product .summary ol li{
    font-size: 14px !important;
    font-family: var(--font-martian-mono) !important;
}

.single-product .summary .product-border{
    display: none;
}


.single-product .single_add_to_cart_button{
    border: 0px !important;
    font-family: var(--font-martian-mono) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    border-radius: 5px !important;
    text-transform: uppercase !important;
    padding: 7px 30px !important;
}

.single-product .woocommerce-product-details__short-description{
    padding: 30px 0 !important;
}

.single-product .product_meta{
    display: none !important;
}

.woo-tabs-horizontal .woocommerce-tabs>.tabs li a{
    font-family: var(--font-martian-mono) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
}

.woocommerce-tabs li#tab-title-_courses_data{
    display: none !important;
}

.woocommerce-Tabs-panel p,
.woocommerce-Tabs-panel ul li,
.woocommerce-Tabs-panel ol li{
    font-size: 12px !important;
    font-family: var(--font-martian-mono) !important;
}

.woocommerce-Tabs-panel h3{
    display: none !important;
}

.single-product .woocommerce-tabs ul.list-courses-assign-product{
    margin: 0px !important;
    margin-left: 0px !important;
}

.single-product .related h2{
    text-align: center !important;
    text-transform: uppercase !important;
    font-family: var(--font-martian-mono) !important;
    font-size: 25px !important;
    font-weight: 400 !important;
}

.single-product .grid-courses .course-block{
    border: 3px solid var(--color-black) !important;
}

.single-product .grid-courses .course-block h3{
    color: var(--color-black) !important;
}

.single-product .grid-courses .course-block .price{
    color: var(--color-black) !important;
}

.single-product .grid-courses .course-block img{
    height: 400px !important;
}

.wc-block-components-notice-banner {
    font-family: var(--font-martian-mono) !important;
    font-size: 12px !important;
    margin-bottom: 15px !important;
}

.wc-block-components-notice-banner.is-success{
    color: var(--color-success) !important;
    background-color: #dcffeb !important;
    outline: none !important;
    border: 2px solid var(--color-success) !important;
    border-radius: 5px !important;}

.wc-block-components-notice-banner.is-error{
    color: var(--color-error) !important;
    background-color: #ffd2cd !important;
    outline: none !important;
    border: 2px solid var(--color-error) !important;
    border-radius: 5px !important;
}

.woocommerce-cart .woocommerce-content-box,
.woocommerce-cart .coupon,
.woocommerce-cart .cart_totals {
    border: 3px solid var(--color-primary) !important;
    border-radius: 5px !important;
}

.woocommerce-cart h2{
    color: var(--color-black) !important;
    font-family: var(--font-martian-mono) !important;
    font-size: 25px !important;
    border: 0px !important;
}

.woocommerce-cart .product-title{
    font-size: 14px !important;
    font-family: var(--font-martian-mono) !important;
}
.woocommerce-cart input{
    font-size: 14px !important;
    font-family: var(--font-martian-mono) !important;
}

.woocommerce-cart th{
    font-family: var(--font-martian-mono) !important;
    font-size: 12px !important;
}

.woocommerce-cart .fusion-button {
    background-color: var(--color-primary) !important;
    border: 0px !important;
    border-radius: 5px !important;
    font-size: 14px !important;
    height: 40px !important;
    font-weight: 500 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    font-family: var(--font-martian-mono) !important;
    justify-content: center !important;
}

.woocommerce-cart bdi, .woocommerce-cart span{
    font-size: 12px !important;
    font-family: var(--font-martian-mono) !important;
}

.woocommerce-cart .fusion-update-cart{
    display: none !important;
}
.has-fluid-checkout div.woocommerce form .form-row input[type=text]:focus,
.has-fluid-checkout div.woocommerce form .form-row input[type=email]:focus,
div.woocommerce form .form-row input[type=password]:focus
.has-fluid-checkout div.woocommerce form .form-row textarea:focus{

    outline: none !important;
    box-shadow: none !important;
}

.has-fluid-checkout input,
.has-fluid-checkout textarea ,
.has-fluid-checkout select,
.has-fluid-checkout .select2-selection{
    font-size: 14px !important;
    font-family: var(--font-martian-mono) !important;
    border: 3px solid var(--color-primary) !important;
    outline: none !important;
    border-radius: 8px !important;
    resize: none !important;
    transition: all 0.3s ease-in-out !important;
    outline: none !important;
}

.has-fluid-checkout .select2-container .select2-selection .select2-selection__arrow{
    color: red !important;
}

.has-fluid-checkout .fc-step__substep-title{
    font-family: var(--font-martian-mono) !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
}

.has-fluid-checkout .required_field{
    font-size: 13px !important;
    font-family: var(--font-martian-mono) !important;
}

.has-fluid-checkout .has-description .woocommerce-input-wrapper span,
.has-fluid-checkout .fc-account-creation-notice{
    font-size: 12px !important;
    font-family: var(--font-martian-mono) !important;
    padding: 0px !important;
    padding-top: 10px !important;
    color: #7b7575 !important;
}

.has-fluid-checkout .collapsible-content__inner  .expansible-section__toggle-plus{
    font-family: var(--font-martian-mono) !important;
    font-size: 12px !important;
}

.has-fluid-checkout .collapsible-content__inner label{
    font-size: 13px !important;
    font-family: var(--font-martian-mono) !important;
}

.has-fluid-checkout .lp-course-sold-out{
    display: none !important;
}

.has-fluid-checkout .payment-method__label-text{
    font-family: var(--font-martian-mono) !important;
    font-size: 12px !important;
}

.has-fluid-checkout .woocommerce-terms-and-conditions-wrapper{
    display: none !important;
}

.has-fluid-checkout .payment_method_bacs *{
    font-family: var(--font-martian-mono) !important;
    font-size: 12px !important;
}

/* === Checkbox de términos y condiciones (versión con !important) === */
.has-fluid-checkout .privacy .woocommerce-input-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin-top: 10px !important;
    margin-bottom: 15px !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    flex-wrap: wrap !important;
  }
  
  .has-fluid-checkout .privacy label.checkbox {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    cursor: pointer !important;
    font-weight: 400 !important;
    color: #333 !important;
    font-family: var(--font-martian-mono) !important;
    font-size: 12px !important;
  }
  
  /* Checkbox base */
  .has-fluid-checkout .privacy input[type="checkbox"].input-checkbox {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #ccc !important;
    border-radius: 4px !important;
    position: relative !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
  }
  
  /* Hover */
  .has-fluid-checkout .privacy input[type="checkbox"].input-checkbox:hover {
    border-color: #666 !important;
  }
  
  /* Checked */
  .has-fluid-checkout .privacy input[type="checkbox"].input-checkbox:checked {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
  }
  
  /* Checkmark visual */
  .has-fluid-checkout .privacy input[type="checkbox"].input-checkbox:checked::after {
    content: '' !important;
    position: absolute !important;
    top: 1px !important;
    left: 4px !important;
    width: 4px !important;
    height: 9px !important;
    border: solid #fff !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
  }
  
  
  /* Asterisco obligatorio */
  .has-fluid-checkout .privacy .required {
    color: #d63638 !important; /* rojo WooCommerce */
    font-weight: bold !important;
    margin-left: 2px !important;
  }
  
  /* Enlace */
  .has-fluid-checkout .privacy a {
    color: var(--color-primary) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    transition: color 0.2s ease !important;
  }
  
  .has-fluid-checkout .privacy a:hover {
    color: var(--color-primary) !important;
  }
  div.woocommerce form .form-row input[type=checkbox]:focus{
    outline: none !important;
  }
  
  .has-fluid-checkout .product-details{
    font-family: var(--font-martian-mono) !important;
    text-transform: uppercase !important;
  } 

  .has-fluid-checkout .fc-checkout-order-review__inner bdi{
    font-family: var(--font-martian-mono) !important;
    font-size: 13px !important;
  }

  .has-fluid-checkout .fc-checkout-order-review__header-link{
    font-family: var(--font-martian-mono) !important;
    font-size: 13px !important;
  }

  .has-fluid-checkout .fc-checkout-order-review__inner th{
    font-size: 13px !important;
    font-family: var(--font-martian-mono) !important;
  }

  .xlwcty_in_wrap_two_column_top{
    font-family: var(--font-martian-mono) !important;
    font-size: 14px !important;
  }

  .xlwcty_wrap .xlwcty_order_info .xlwcty_order_no{
    font-size: 14px !important;
  }

  .xlwcty_wrap .xlwcty_order_info .xlwcty_userN{
    font-size: 20px !important;
    text-transform: uppercase !important;
  }

  .xlwcty_wrap .xlwcty_Box *{
    font-family: var(--font-martian-mono) !important;
    font-size: 12px !important;
  }


  /* Curso */

.meta-item-student, 
.meta-item-instructor,
.meta-item-categories,
.course-nav-tab-instructor,
.learn-press-breadcrumb{
    display: none !important;
}

.lp-archive-courses .course-detail-info{
    background-color: var(--color-primary) !important;
}

.lp-archive-courses .course-meta__pull-left .meta-item::before{
    color: var(--color-white) !important;
}

.lp-archive-courses .course-summary-sidebar{
    margin-top: 20px !important;
}

.course-summary-sidebar__inner{
    top: 0 !important;
}

.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-top{
    box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px !important;
}


.lp-content-area{
    padding: 0px !important;
}

.course-detail-info{
    padding: 20px !important;
}

.course-title{
    font-size: 25px !important;
    text-transform: uppercase !important;
}

.entry-content-left{
    padding-top: 20px !important;
}

.meta-item span{
    font-size: 12px !important;
}

.learn-press-nav-tabs{
    column-gap: 0px !important;
    row-gap: 0px !important;
}

.learn-press-nav-tabs li{
    padding-left: 20px !important;
    padding-right: 20px !important;
    font-size: 12px !important;
}

.course-extra-box__title, .course-faqs-box__title{
    font-size: 14px !important;
}

.course-extra-box__content li{
    font-size: 14px !important;
}

.course-time p, .items-progress *{
    font-size: 14px !important;
}

.course-progress{
    padding-top: 20px !important;
    font-size: 14px !important;
}

#popup-sidebar .course-curriculum{
    top: 100px !important;
}

.lp-modal-dialog .lp-modal-header,
.lp-modal-dialog .btn-yes{
    background-color: var(--color-primary) !important;
}

.modal-title {
    font-size: 18px !important;
}

.learnpress-profile #main{
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

.lp-user-profile .lp-profile-content-area{
    align-items: center !important;
    gap: 15px !important;
}

.lp-profile-username{
    font-size: 20px !important;
    text-transform: uppercase !important;
}


.lp-user-profile .lp-profile-left .user-avatar{
    width: 60px !important;
}

.lp-user-profile .lp-profile-right{
    padding-left: 0px !important;
}

.lp-user-profile .lp-profile-left{
    min-width: 0px !important;
}

.course-instructor-category{
    display: none !important;
}

.lp_profile_course_progress *,
.learn-press-filters *{
    font-size: 14px !important;
}
/* Start now */

.adhoc-auth-wrap {
    max-width: 520px;
    margin: 0 auto;
}

.adhoc-auth-card {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1.25rem 1.25rem;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
    display: flex !important;
    flex-direction: column;
    gap: 20px;
}

.adhoc-auth-title {
    margin: 0 0 .25rem;
}

.adhoc-auth-toggle {
    margin: 0 0 1rem;
    color: #555;
}

.adhoc-auth-toggle a {
    text-decoration: underline;
}

.adhoc-auth-form p {
    margin: .65rem 0;
    font-size: 12px !important;
}

.adhoc-auth-form input[type="text"],
.adhoc-auth-form input[type="email"],
.adhoc-auth-form input[type="password"] {
    width: 100%;
    padding: .65rem .8rem;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 12px !important;
}

.adhoc-auth-remember{
    display: flex;
    flex-direction: row;
    align-items: center;
}

.adhoc-auth-remember input[type="checkbox"]{
    margin: 0px !important;
    padding: 20px !important;
}
.adhoc-btn {
    display: inline-block;
    padding: 10px 30px;
    border: 1px solid var(--color-primary);
    background: var(--color-primary);
    color: #fff;
    border-radius: 8px;
    cursor: pointer;
    text-decoration: none;
    font-size: 12px !important;
}

.adhoc-btn-secondary {
    display: inline-block;
    padding: 10px 30px;
    border: 1px solid var(--color-primary);
    background: var(--color-primary);
    color: #fff;
    border-radius: 8px;
    cursor: pointer;
    text-decoration: none;
    font-size: 12px !important;
    margin-top: 20px !important;
}

.adhoc-auth.notice-success {
    background: #e8f7ee;
    border-left: 4px solid #28a745;
    padding: .8rem;
    margin: .8rem 0;
}

.adhoc-auth.notice-error {
    background: #fdecea;
    border-left: 4px solid #dc3545;
    padding: .8rem;
    margin: 0 auto;
    max-width: 520px;
    margin-bottom: 20px !important;
}

/* simple inline styles for password toggle layout */
.adhoc-pass-wrap {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
}
.adhoc-pass-wrap input[type="password"],
.adhoc-pass-wrap input[type="text"] {
    flex: 1;
}
.adhoc-pass-toggle {
    border: 1px solid var(--color-black);
    background: var(--color-black);
    border-radius: 8px;
    padding: .65rem .8rem;
    font-size: 12px !important;
    cursor: pointer;
    color: var(--color-white) !important;
}
.adhoc-auth.notice-error ul {
    margin: .2rem 0 0 1rem;
}

.adhoc-auth *, .adhoc-auth-wrap *{
    font-family: var(--font-martian-mono) !important;
}

.adhoc-auth *{
    font-size: 12px !important;
}

.adhoc-title-login{
    font-size: 25px !important;
}
.adhoc-title-register{
    font-size: 18px !important;
}

/* ----- GRID IMAGENES ----- */

  .adhoc-post-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

.adhoc-post-list *{
    font-family: var(--font-martian-mono) !important;
}
.adhoc-post-card {
    display: block;
    text-decoration: none;
    color: inherit;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 12px;
    overflow: hidden;
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
    background: #fff;
}
.adhoc-post-media {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f7f7f7;
}
.adhoc-post-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.adhoc-post-content {
    padding: 16px;
}
.adhoc-post-category {
    display: inline-block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .04em;
    opacity: .7;
    margin-bottom: 6px;
}
.adhoc-post-title {
    margin: 0 0 8px;
    font-size: 16px !important;
    line-height: 1.2;
}
.adhoc-post-excerpt {
    margin: 0;
    font-size: 14px !important;
    line-height: 1.6;
    color: #333;
    opacity: .9;
}

/* ----- FORMULARIOS ----- */
.gform_wrapper {
  font-family: var(--font-martian-mono) !important;
}
.gform_wrapper input[type='text'],
.gform_wrapper input[type='email'],
.gform_wrapper textarea {
  border: 3px solid var(--color-primary) !important;
  outline: none !important;
  border-radius: 8px !important;
  resize: none !important;
  transition: all 0.3s ease-in-out !important;
}
.gform_wrapper input[type='text']::placeholder,
.gform_wrapper input[type='email']::placeholder,
.gform_wrapper textarea::placeholder {
  color: hsl(0, 0%, 50%) !important;
}
.gform_wrapper input[type='checkbox'] {
  border: 3px solid var(--color-primary) !important;
  outline: none !important;
  transition: all 0.3s ease-in-out !important;
}
.gform_wrapper input[type='checkbox']::before {
  color: var(--color-primary) !important;
}
.gform_wrapper input[type='text']:focus,
.gform_wrapper input[type='email']:focus,
.gform_wrapper input[type='checkbox']:focus,
.gform_wrapper textarea:focus {
  box-shadow: 0 0 0 3px #740000bb !important;
}

span.gfield_required {
  display: none !important;
  visibility: hidden !important;
}

/* ----- RESPONSIVE ----- */
@media (max-width: 1164px) {
  .grid-courses {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .grid-courses .course-block:first-child {
    border-bottom-left-radius: 0 !important;
  }
  .grid-courses .course-block:nth-child(2) {
    border-top-right-radius: 50px !important;
  }
  .grid-courses .course-block:last-child {
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 50px !important;
  }
}
@media (max-width: 1000px) {
  .fusion-main-menu {
    display: none !important;
    visibility: hidden !important;
  }
  header .adhoc-burger-menu {
    display: flex !important;
    visibility: visible !important;
  }
}


@media (max-width: 875px) {



    .adhoc-footer .footer-links, 
    .adhoc-footer .footer-links .footer-link-nav,
    .adhoc-footer .footer-legal,
    .adhoc-footer .footer-legal .footer-legal-links{
        display: flex !important;
        flex-direction: column !important;
        text-align: center !important;
    }

    .adhoc-footer .footer-links{
        gap: 20px !important;
        margin-bottom: 20px !important;
    }

    .adhoc-footer .footer-legal .footer-legal-links{
        gap: 10px !important;
    }

    .footer-legal{
        display: flex;
        flex-direction: column;
        gap: 20px;
        font-size: 14px !important;
    }
  .texto h2 {
    font-size: 26px !important;
    margin-bottom: 20px !important;
  }
  

  .texto h3, .post-title{
    font-size: 24px !important;
  }

  .grid-about-info, .adhoc-post-list{
    grid-template-columns: 1fr !important;
  }
  .grid-courses .course-block img{
    height: 200px !important;
  }

  .main-single-post .post-content h2{
    font-size: 20px !important;
  }
  .boton a{
    font-size: 14px !important;
  }
  .method-grid {
    grid-template-columns: repeat(1, 1fr) !important;
  }
  .method-grid .method-separator {
    margin-top: 0 !important;
    margin-bottom: 20px !important;
  }
  .values-grid {
    grid-template-columns: repeat(1, 1fr) !important;
  }
  .values-grid .value-separator {
    margin-top: 0 !important;
    margin-bottom: 20px !important;
  }
  .values-grid .value-separator.hidden {
    visibility: visible !important;
  }
}

@media only screen and (max-width: 800px){
    .fusion-header{
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }
    .menu-adhoc{
        gap: 15px !important;
    }

    .item{
        font-size: 20px !important;
    }

    #main .banner-deslizante{
        padding: 0px !important;
    }
}


@media (max-width: 794px) {
  .grid-courses {
    grid-template-columns: 1fr !important;
  }
  .grid-courses .course-block:first-child {
    border-top-right-radius: 50px !important;
  }
  .grid-courses .course-block:nth-child(2) {
    border-top-right-radius: 0 !important;
  }
}

@media only screen and (max-width: 600px) {
    .fusion-logo img{
        width: 120px !important;
    }
    .menu-adhoc .start-now-link{
        font-size: 12px !important;
        padding: 5px 15px !important;
    }
}
