/*
 Theme Name:   Bootscore Child
 Description:  Bootscore Child Theme
 Author:       Bootscore
 Author URI:   https://bootscore.me
 Template:     bootscore
 Version:      6.0.0
 Requires at least: 5.0
 Tested up to: 6.6
 Requires PHP: 7.4
 License: MIT License
 License URI: https://github.com/bootscore/bootscore-child/blob/main/LICENSE
 Text Domain:  bootscore
*/

/* 
All style editing is done via /assets/scss/_bootscore_custom.scss
*/

:root {
  --bas-white: #ffffff;
  --bas-secondary: #b19f5a;
  --bas-grey: #6c6c6c;
  --bas-grey-10: #6c6c6c1a;
  --bas-black: #000000;
  --bas-primary: #283a61;
  --bas-degradado: linear-gradient(to bottom, #00050e 0%, #283a61 100%);
  --bas-gold-gradient: linear-gradient(
    110deg,
    #8f7a32 0%,
    #b19f5a 28%,
    #e1c66c 48%,
    #b19f5a 68%,
    #8f7a32 100%
  );
  --bas-gold-gradient-hover: linear-gradient(
    110deg,
    #735f24 0%,
    #b19f5a 22%,
    #f0d987 50%,
    #b19f5a 78%,
    #735f24 100%
  );
  --bas-card-gradient: var(--bas-degradado);
}

body {
  font-family: Arial, Helvetica, sans-serif;
}

/* ==== generales ==== */
.h1 {
  font-size: clamp(2.2rem, 4.5vw, 4.06rem);
  font-weight: 900;
  background: var(--bas-degradado);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}

.h2 {
  font-size: 2.81rem;
  font-weight: 900;
  color: var(--bas-primary);
}

.h3 {
  font-size: 1.375rem;
  font-weight: 900;
}

.lead {
  font-size: 1.875rem;
  font-weight: 500;
}

p {
  font-size: 1.125rem;
  color: var(--bas-primary);
}

a {
  color: var(--bas-secondary);
}

.eyebrow {
  font-size: 1.5rem;
  font-weight: 400;
  text-transform: uppercase;
}

/* ==== Navegación ==== */

.site-header {
  border-bottom: 0;
}

.site-header-top {
  background: var(--bas-grey-10);
  font-size: 0.78rem;
  font-weight: 700;
}

.site-header-top-inner {
  min-height: 2.45rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.25rem;
}

.site-header-top a,
.site-header-top button {
  color: var(--bas-primary);
  text-decoration: none;
}

.header-language,
.header-user > a,
.header-cart {
  display: inline-flex;
  align-items: center;
}

.header-language {
  gap: 0.1rem;
  text-transform: uppercase;
}

.header-user > a,
.header-cart {
  gap: 0.35rem;
  color: var(--bas-primary);
  text-decoration: none;
}

.header-user .dropdown-toggle::after {
  margin-left: 0.15rem;
  vertical-align: 0.1em;
}

.header-user .dropdown-menu {
  background: var(--bas-white);
  border-color: var(--bas-secondary);
}

.header-user .dropdown-header,
.header-user .dropdown-item {
  color: var(--bas-primary) !important;
}

.header-user .dropdown-divider {
  border-color: var(--bas-secondary);
  opacity: 0.55;
}

.header-user .dropdown-item:hover,
.header-user .dropdown-item:focus,
.header-user .dropdown-item.active,
.header-user .dropdown-item:active {
  background: var(--bas-secondary);
  color: var(--bas-white) !important;
}

.header-user-icon,
.header-cart svg {
  color: var(--bas-primary);
}

.header-cart {
  padding: 0;
  background: transparent;
  border: 0;
  font-weight: 700;
}

.site-header-main {
  min-height: 6rem;
  padding-top: 0;
  padding-bottom: 0;
  background: var(--bas-white);
}

.site-header-main-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}

.header-logo {
  flex: 0 0 auto;
  padding: 0;
}

.header-logo img {
  width: auto;
  height: 3.1rem;
  display: block;
}

.dropdown-item.active, .dropdown-item:active  {
  background-color: var(--bas-primary);
}

@media (max-width: 500px) {
  .header-logo img {
    height: 2.1rem;
  }
}

@media (max-width: 403px) {
  .header-logo img {
    height: 1.7rem;
  }
}

#nav-main .offcanvas {
  flex: 1 1 auto;
}

#nav-main .offcanvas-body {
  display: flex;
  align-items: center;
  justify-content: center;
}

#nav-main .offcanvas-body ul {
  margin: unset !important;
}

.navbar-nav {
  align-items: center;
  gap: 1.05rem;
}

.navbar-nav .nav-link {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.875rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--bas-primary) !important;
  padding: 0.5rem 0.35rem !important;
  transition: color 0.2s ease;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-item.active .nav-link,
.navbar-nav .nav-link.active {
  color: var(--bas-secondary) !important;
}

.header-contact-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  flex: 0 0 auto;
}

.header-contact {
  min-width: 8.4rem;
  border-radius: 5px;
  font-size: 0.86rem;
  font-weight: 900;
  text-transform: uppercase;
  padding: 0.72rem 1.35rem;
  background-color: var(--bas-secondary);
  border-color: var(--bas-secondary);
  color: var(--bas-white);
}

@media (max-width: 576px) {
  .header-contact {
    min-width: unset;
    font-size: 0.65rem !important;
    font-weight: 900;
    text-transform: uppercase;
    padding: 0.5rem 0.5rem !important;
    margin-bottom: 0.25rem;
  }
}

.header-contact:hover {
  background-color: #958343;
  border-color: #958343;
  color: var(--bas-white);
}

.nav-toggler {
  border: 0 !important;
  color: var(--bas-primary) !important;
  border-radius: 8px !important;
}

.nav-toggler:hover {
  background-color: var(--bas-primary) !important;
  color: var(--bas-white) !important;
}

.offcanvas-logo {
  width: 10rem;
  height: auto;
}

/* Rediseño Offcanvas solo para móvil */
@media (max-width: 1199px) {
  #nav-main .offcanvas {
    background: var(--bas-degradado) !important;
    color: var(--bas-white) !important;
    border-left: none !important;
    width: 100% !important;
  }

  #nav-main .offcanvas-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding: 1.5rem !important;
    background-color: var(--bas-white);
  }

  .offcanvas-title {
    font-weight: 950;
    color: var(--bas-white) !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 1.2rem;
  }

  /* Custom Close Button */
  #nav-main .offcanvas .btn-close {
    opacity: 1;
    background-size: 1.25rem;
  }

  #nav-main .offcanvas-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 2rem !important;
    z-index: 2;
  }

  #nav-main .offcanvas .navbar-nav {
    width: 100%;
    text-align: center;
  }

  #nav-main .offcanvas .nav-link {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 2rem !important;
    font-weight: 900 !important;
    text-transform: uppercase;
    color: var(--bas-white) !important;
    padding: 1rem 0 !important;
    border-bottom: none !important;
    transition:
      transform 0.3s ease,
      color 0.3s ease;
  }

  #nav-main .offcanvas .nav-link:hover,
  #nav-main .offcanvas .nav-link.active {
    color: var(--bas-white) !important;
    transform: scale(1.05);
  }
}

@media (min-width: 1200px) {
  .navbar-nav {
    margin-left: 0;
  }
}
.btn {
  font-size: 0.875rem;
  border-radius: 5px;
  padding: 0.5rem 1rem;
  border: 1px solid transparent;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

/* PRIMARY */
.btn-primary {
  background-color: var(--bas-secondary);
  color: var(--bas-white);
  border-color: var(--bas-secondary);
}

.btn-primary:hover {
  background-color: #c63d16;
  border-color: #c63d16;
}

.btn-primary:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(217, 68, 26, 0.35);
}

.btn-primary:active {
  background-color: #a73212;
  border-color: #a73212;
  transform: translateY(1px);
}

/* CTA */
.btn-cta {
  background-color: var(--bas-secondary);
  color: var(--bas-primary);
  border-color: var(--bas-secondary);
}

.btn-cta:hover {
  background-color: #e6d800;
  border-color: #e6d800;
}

.btn-cta:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(255, 238, 0, 0.4);
}

.btn-cta:active {
  background-color: #ccbe00;
  border-color: #ccbe00;
  transform: translateY(1px);
}

/* DISABLED */
.btn:disabled,
.btn.disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

.not-btn {
  background-color: unset;
  border: unset;
  color: var(--bas-primary);
}

/* BACKGROUND HELPER */
.bg-primary-90 {
  background-color: rgb(12 137 188 / 90%);
}

/* ==== inicio ==== */
.inicio {
  background: var(--bas-white);
  color: var(--bas-primary);
}

.inicio .h1,
.inicio .h2,
.inicio .h3 {
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
  color: var(--bas-primary);
  line-height: 1.1;
}

.inicio .h1 {
  font-size: clamp(2.25rem, 7vw, 4.25rem);
  color: var(--bas-white);
  text-transform: none;
  margin-right: auto;
  margin-left: auto;
}

.inicio .h1 span {
  color: var(--bas-secondary);
}

.inicio .h2 {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
}

.inicio .h3 {
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0;
}

.inicio p {
  color: var(--bas-primary);
}

.inicio .btn {
  border-radius: 2px;
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  padding: 0.72rem 1.15rem;
}

.inicio .btn-primary {
  background-color: var(--bas-secondary);
  border-color: var(--bas-secondary);
  color: var(--bas-white);
}

.inicio .btn-primary:hover {
  background-color: #958343;
  border-color: #958343;
  color: var(--bas-white);
}

.inicio .btn-primary-outline {
  background-color: transparent;
  border-color: var(--bas-secondary);
  color: var(--bas-secondary);
}

.inicio .btn-primary-outline:hover {
  background-color: var(--bas-secondary);
  color: var(--bas-white);
}

.inicio .hero {
  min-height: 29rem;
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: var(--bas-primary);
  background-position: center;
  background-size: cover;
  display: flex;
  align-items: center;
  position: relative;
}

.inicio .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./assets/img/home_bg.jpg);
  filter: grayscale(1);
  background-position: center;
}

.inicio .hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(8, 22, 45, 0.78);
}

.inicio .hero > * {
  position: relative;
  z-index: 1;
}

.inicio .hero .lead {
  max-width: 44rem;
  margin: 1.35rem auto 1.7rem;
  color: var(--bas-white);
  font-size: clamp(1rem, 2vw, 1.2rem);
  font-weight: 500;
}

.inicio .situaciones,
.inicio .trayectoria,
.inicio .testimonios {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
}

.inicio .situaciones .h2 {
  margin-bottom: 2rem;
  font-size: clamp(1.5rem, 3vw, 2rem);
}

.inicio .situaciones-img,
.inicio .trayectoria-img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
  border-radius: 10px;
}

.inicio .items-list {
  display: grid;
  gap: 0.5rem;
}

.inicio .item-line {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  min-height: 4rem;
  padding: 1.5rem 1rem;
  background: var(--bas-white);
  border: 1px solid rgba(40, 58, 97, 0.12);
  border-radius: 10px;
}

.inicio .item-line svg {
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
}

.inicio .trayectoria .item-line {
  border: 0;
  box-shadow: 5px 4px 4px 0 rgba(0, 0, 0, 0.14);
}

.inicio .item-line p {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 400;
}

.inicio .item-line p strong {
  font-weight: 700;
}

.inicio .trayectoria .item-line p {
  font-weight: 400;
}

.inicio .franja {
  padding-top: 2.5em;
  padding-bottom: 2.5rem;
  background: var(--bas-primary);
  text-align: center;
}

.inicio .franja p,
.inicio .franja blockquote {
  margin: 0 auto;
  color: var(--bas-white);
  font-size: clamp(1rem, 2.1vw, 1.35rem);
  font-weight: 700;
  line-height: 1.35;
}

.inicio .franja--cita {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.inicio .trayectoria .h2 {
  max-width: 46rem;
  margin-bottom: 1.35rem;
}

.inicio .trayectoria-grid {
  margin-top: 2.5rem;
}

.inicio .trayectoria-item {
  height: 100%;
  align-items: flex-start;
}

.inicio .servicios {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
  background: #f2f2f2;
}

.inicio .servicios-grid {
  margin-top: 1.5rem;
}

.inicio .servicio-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 2rem;
  background: var(--bas-white);
  border: 0;
  border-radius: 10px;
}

.inicio .servicios-grid > .col-md-6:nth-child(3) {
  max-width: 34rem;
}

.inicio .servicio-icon-wrap {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.inicio .servicio-icon-wrap img {
  max-width: 3rem;
  max-height: 3rem;
  object-fit: contain;
}

/* .inicio .servicio-card:hover .servicio-icon-wrap img {
  filter: brightness(10);
} */

.inicio .servicio-icon-default {
  width: 2.3rem;
  height: 2.3rem;
  border: 3px solid var(--bas-primary);
  border-radius: 50%;
  display: block;
  position: relative;
}

.inicio .servicio-icon-default::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -1rem;
  width: 2.8rem;
  height: 1.4rem;
  border: 3px solid var(--bas-primary);
  border-top: 0;
  border-radius: 0 0 2rem 2rem;
  transform: translateX(-50%);
}

.inicio .servicio-card > p {
  min-height: 3.5rem;
  margin-bottom: 0;
}

.inicio .servicio-puntos {
  margin-top: 0.25rem;
}

.inicio .servicio-puntos .item-line {
  min-height: 4.5rem;
  box-shadow: none;
}

.inicio .servicio-puntos .item-line p {
  font-size: 0.88rem;
  font-weight: 500;
}

.inicio .servicio-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: auto;
  padding-top: 0.35rem;
}

.inicio .cta-final {
  padding-top: 5.5rem;
  padding-bottom: 5.5rem;
  background-color: var(--bas-primary);
  background-position: center;
  background-size: cover;
  position: relative;
}

.inicio .cta-final::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(15, 20, 20, 0.48);
}

.inicio .cta-final > * {
  position: relative;
  z-index: 1;
}

.inicio .cta-final .h2,
.inicio .cta-final p {
  color: var(--bas-white);
}

.inicio .cta-final .h2 {
  margin-bottom: 0.75rem;
}

.inicio .cta-final p {
  max-width: 34rem;
  margin: 0 auto 1.5rem;
}

.inicio .testimonios {
  background: var(--bas-white);
}

.inicio .testimonios .h2 {
  margin-bottom: 2rem;
  font-size: 1.35rem;
  text-transform: uppercase;
}

.inicio .testimonio-card {
  padding: 2.2rem 1.5rem;
  background: #f2f2f2;
  border-radius: 4px;
  box-shadow: none;
  text-align: center;
}

.inicio .testimonio-foto {
  width: 5rem;
  height: 5rem;
  margin: 0 auto 1rem;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.inicio .testimonio-nombre,
.inicio .testimonio-cargo {
  color: var(--bas-secondary);
  font-size: 0.95rem;
  font-weight: 400;
}

.inicio .testimonio-texto,
.inicio .testimonio-texto p {
  margin-bottom: 0;
  color: var(--bas-primary);
  font-size: 0.86rem;
  line-height: 1.55;
}

/* ==== sobre mí ==== */
.sobre-mi {
  background: var(--bas-white);
  color: var(--bas-primary);
}

.sobre-mi .h1,
.sobre-mi .h2,
.sobre-mi .h3 {
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
  color: var(--bas-primary);
  line-height: 1.1;
}

.sobre-mi .h1 {
  color: var(--bas-white);
  font-size: clamp(2.25rem, 6vw, 4rem);
  text-transform: none;
}

.sobre-mi .h1 span {
  color: var(--bas-secondary);
}

.sobre-mi .h2 {
  font-size: clamp(1.6rem, 3vw, 2.25rem);
}

.sobre-mi .h3 {
  font-size: 1rem;
  font-weight: 900;
  text-transform: uppercase;
}

.sobre-mi p {
  color: var(--bas-primary);
}

.sobre-mi .hero {
  min-height: 22rem;
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: var(--bas-primary);
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

.sobre-mi .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./assets/img/sobremi_bg.jpg);
  filter: grayscale(1);
  background-position: center;
}

.sobre-mi .hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(8, 22, 45, 0.78);
}

.sobre-mi .hero > * {
  position: relative;
  z-index: 1;
}

.sobre-mi .hero-subtitle,
.sobre-mi .hero .lead {
  max-width: 43rem;
  margin-right: auto;
  margin-left: auto;
  color: var(--bas-white);
}

.sobre-mi .hero-subtitle {
  margin-bottom: 1rem;
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  font-weight: 900;
}

.sobre-mi .hero .lead {
  margin-bottom: 0;
  font-size: clamp(1rem, 2vw, 1.18rem);
  font-weight: 500;
}

.sobre-mi .trayectoria,
.sobre-mi .curriculum {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
}

.sobre-mi .trayectoria .h2 {
  max-width: 42rem;
}

.sobre-mi .trayectoria-img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
  border-radius: 10px;
}

.sobre-mi .trayectoria-grid {
  margin-top: 2.75rem;
}

.sobre-mi .item-line {
  display: flex;
  align-items: flex-start;
  gap: 0.9rem;
  min-height: 4rem;
  height: 100%;
  padding: 1rem;
  background: var(--bas-white);
  border: 1px solid rgba(40, 58, 97, 0.14);
  box-shadow: 0 8px 24px rgba(40, 58, 97, 0.06);
  border-radius: 10px;
}

.sobre-mi .trayectoria .item-line {
  align-items: start;
  border: 0;
  box-shadow: 5px 4px 4px 0 rgba(0, 0, 0, 0.14);
}

.sobre-mi .item-line p {
  margin: 0;
  font-size: 1.125rem;
}

.sobre-mi .item-line svg {
  min-height: 23px;
  min-width: 23px;
}

.sobre-mi .franja {
  padding-top: 3rem;
  padding-bottom: 3rem;
  background: var(--bas-primary);
  text-align: center;
}

.sobre-mi .franja blockquote {
  max-width: 68rem;
  margin: 0 auto;
  color: var(--bas-white);
  font-size: clamp(1rem, 2.1vw, 1.35rem);
  font-weight: 900;
  line-height: 1.35;
}

.sobre-mi .curriculum {
  padding-top: 3rem;
}

.sobre-mi .cv-section + .cv-section {
  margin-top: 3rem;
}

.sobre-mi .cv-section .h2 {
  margin-bottom: 1.5rem;
}

.sobre-mi .cv-box,
.sobre-mi .cv-card {
  background: var(--bas-white);
  border: 1px solid rgba(40, 58, 97, 0.22);
  border-radius: 5px;
}

.sobre-mi .cv-box {
  padding: 1.5rem 1.75rem;
}

.sobre-mi .cv-box--accent {
  border-color: rgba(177, 159, 90, 0.85);
  border-radius: 20px;
}

.sobre-mi .cv-box .h3 {
  margin-bottom: 1rem;
  color: var(--bas-secondary);
  font-size: 0.95rem;
}

.sobre-mi .cv-list {
  margin: 0;
  padding-left: 1.1rem;
}

.sobre-mi .cv-list li {
  margin-bottom: 0.55rem;
  color: var(--bas-primary);
  font-size: 0.95rem;
  line-height: 1.55;
}

.sobre-mi .cv-list li:last-child {
  margin-bottom: 0;
}

.sobre-mi .cv-stack {
  display: grid;
  gap: 0.9rem;
}

.sobre-mi .cv-card {
  padding: 1.25rem 1.5rem;
  box-shadow: 0 8px 22px rgba(40, 58, 97, 0.04);
}

.sobre-mi .cv-card .h3 {
  margin-bottom: 0.45rem;
  font-size: 0.98rem;
}

.sobre-mi .cv-periodo {
  margin-bottom: 0.7rem;
  color: var(--bas-secondary);
  font-size: 0.9rem;
  font-style: italic;
  font-weight: 700;
}

.sobre-mi .cv-texto,
.sobre-mi .cv-texto p,
.sobre-mi .cv-texto li {
  margin-bottom: 0;
  color: var(--bas-primary);
  font-size: 0.92rem;
  line-height: 1.55;
}

.sobre-mi .cv-texto ul {
  margin-bottom: 0;
  padding-left: 1rem;
}

.sobre-mi .cv-texto--destacado,
.sobre-mi .cv-texto--destacado p {
  color: var(--bas-secondary);
  font-style: italic;
  font-weight: 700;
}

/* ==== cursos ==== */
.cursos {
  background: var(--bas-white);
}

.tutor-wrap {
  padding-top: 3.25rem;
  padding-bottom: 9rem;
}

.tutor-course-filter-wrapper {
  gap: 2.4rem;
}

.tutor-course-filter-container {
  max-width: 14.5rem;
}

.tutor-course-filter-wrapper .tutor-course-filter-container + div,
.tutor-course-filter-wrapper .tutor-course-list,
.tutor-course-filter-wrapper .tutor-course-listing {
  flex: 1 1 auto;
}

.tutor-course-filter-wrapper .tutor-row {
  row-gap: 1.6rem;
}

.tutor-fs-3 {
  margin-bottom: 2.5rem !important;
  font-size: clamp(2.6rem, 5vw, 4.25rem) !important;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  color: var(--bas-primary) !important;
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
}

.tutor-widget-course-categories .tutor-widget-title,
.tutor-course-filter-container .tutor-widget-title {
  font-family: Arial, Helvetica, sans-serif;
  margin-bottom: 1.3rem;
  font-size: 1.05rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--bas-primary) !important;
}

.tutor-widget-course-categories ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.tutor-widget-course-categories ul li {
  border-bottom: 1px solid rgba(40, 58, 97, 0.65);
}

.tutor-widget-course-categories ul li a {
  display: block;
  padding: 0.72rem 0;
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--bas-primary);
  text-decoration: none;
  transition: color 0.2s;
}

.tutor-widget-course-categories ul li a:hover,
.tutor-widget-course-categories ul li.current-cat > a {
  color: var(--bas-secondary);
}

.tutor-card.tutor-course-card {
  border: 1px solid rgba(40, 58, 97, 0.28) !important;
  border-radius: 10px !important;
  box-shadow: 0 5px 10px rgba(40, 58, 97, 0.22) !important;
  overflow: hidden;
  transition:
    box-shadow 0.25s ease,
    transform 0.25s ease;
  background: var(--bas-white);
}

.tutor-card.tutor-course-card:hover {
  box-shadow: 0 10px 24px rgba(40, 58, 97, 0.25) !important;
  transform: translateY(-3px);
}

.tutor-course-thumbnail,
.tutor-course-thumbnail a {
  display: block;
}

.tutor-course-thumbnail img.tutor-card-image-top {
  object-fit: cover;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border-radius: 0 !important;
}

.tutor-card.tutor-course-card .tutor-course-name {
  margin: 0.95rem 1rem 1.15rem !important;
  font-size: 0.96rem !important;
  font-weight: 900 !important;
  color: var(--bas-primary) !important;
  line-height: 1.2;
  text-align: center;
  text-decoration: none !important;
}

.tutor-card.tutor-course-card .tutor-course-name:hover {
  text-decoration: none !important;
}

.tutor-card.tutor-course-card .tutor-meta {
  display: none !important;
}

.tutor-card.tutor-course-card .tutor-card-footer {
  display: flex;
  justify-content: center;
  padding: 0 1rem 1.25rem !important;
  border-top: 0 !important;
}

.tutor-card.tutor-course-card .price,
.tutor-card.tutor-course-card .tutor-fs-6.tutor-fw-bold {
  display: none !important;
}

.tutor-card.tutor-course-card .tutor-btn.tutor-btn-outline-primary,
.tutor-card.tutor-course-card .tutor-btn.tutor-btn-primary {
  width: auto !important;
  min-width: 8.5rem;
  background-color: var(--bas-secondary) !important;
  color: var(--bas-white) !important;
  border-color: var(--bas-secondary) !important;
  border-radius: 5px !important;
  font-size: 0.83rem !important;
  font-weight: 900 !important;
  letter-spacing: 0;
  text-transform: uppercase;
  padding: 0.62rem 1.2rem !important;
  transition:
    background-color 0.2s,
    transform 0.1s;
}

.tutor-card.tutor-course-card .tutor-btn.tutor-btn-outline-primary:hover,
.tutor-card.tutor-course-card .tutor-btn.tutor-btn-primary:hover {
  background-color: #958343 !important;
  border-color: #958343 !important;
  color: var(--bas-white) !important;
  transform: translateY(-1px);
}

.tutor-pagination-wrap,
.tutor-pagination {
  display: flex;
  justify-content: center;
  padding-top: 2rem;
  gap: 0.4rem;
}

.tutor-pagination .tutor-page-link,
.tutor-pagination a,
.tutor-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  border-radius: 5px;
  border: 1.5px solid #e0e0e0;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--bas-primary);
  text-decoration: none;
  transition:
    background-color 0.2s,
    border-color 0.2s;
}

.tutor-pagination .current,
.tutor-pagination .tutor-page-link.current {
  background-color: var(--bas-primary) !important;
  border-color: var(--bas-primary) !important;
  color: var(--bas-white) !important;
}

.tutor-pagination a:hover {
  background-color: rgba(40, 58, 97, 0.08);
  border-color: var(--bas-primary);
}

.tutor-ratings-stars {
  display: none;
}

.tutor-course-name a {
  color: var(--bas-primary) !important;
  font-weight: 900;
  text-decoration: none;
}

.tutor-card-footer {
  padding-top: 0;
}

.tutor-card-footer .tutor-d-flex {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 0;
}

.tutor-card:not(.tutor-no-border) {
  border: 1px solid rgba(40, 58, 97, 0.28) !important;
}

.tutor-card.tutor-course-card .tutor-card-footer {
  border-top: 0 !important;
}

.tutor-meta > * {
  font-size: 0.875rem;
  color: var(--bas-primary);
}

.tutor-meta a {
  color: var(--bas-primary);
}

/* ==== Tutor LMS dashboard ==== */
.tutor-dashboard {
  --dashboard-border: rgba(40, 58, 97, 0.14);
  --dashboard-shadow: 0 0.75rem 2rem rgba(40, 58, 97, 0.1);
  color: var(--bas-primary);
}

.tutor-dashboard .tutor-dashboard-header {
  position: relative;
  margin-bottom: 2rem;
  padding: 1.75rem;
  border: 0;
  border-radius: 0.75rem;
  background: var(--bas-degradado);
  box-shadow: var(--dashboard-shadow);
  overflow: hidden;
}

.tutor-dashboard .tutor-dashboard-header::after {
  content: "";
  position: absolute;
  right: -4rem;
  bottom: -7rem;
  width: 15rem;
  aspect-ratio: 1;
  border: 1px solid rgba(177, 159, 90, 0.45);
  border-radius: 50%;
  box-shadow:
    0 0 0 2rem rgba(177, 159, 90, 0.08),
    0 0 0 4rem rgba(177, 159, 90, 0.05);
  pointer-events: none;
}

.tutor-dashboard .tutor-dashboard-header > * {
  position: relative;
  z-index: 1;
}


.tutor-dashboard .tutor-dashboard-header-avatar img,
.tutor-dashboard .tutor-avatar {
  border-radius: 50%;
}

.tutor-dashboard .tutor-dashboard-header-display-name,
.tutor-dashboard .tutor-dashboard-header-display-name *,
.tutor-dashboard .tutor-dashboard-header .tutor-color-black,
.tutor-dashboard .tutor-dashboard-header .tutor-color-secondary {
  color: var(--bas-white) !important;
}

.tutor-dashboard .tutor-dashboard-header-display-name {
  font-size: clamp(1.35rem, 3vw, 2rem);
  font-weight: 900;
}

.tutor-dashboard .tutor-dashboard-permalinks {
  padding: 0.65rem;
  border: 1px solid var(--dashboard-border);
  border-radius: 0.75rem;
  background: var(--bas-white);
  box-shadow: var(--dashboard-shadow);
}

.tutor-dashboard .tutor-dashboard-permalinks li {
  margin: 0.15rem 0;
}

.tutor-dashboard .tutor-dashboard-permalinks a {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.75rem 0.85rem;
  border-radius: 0.4rem;
  color: var(--bas-primary);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.tutor-dashboard .tutor-dashboard-permalinks a:hover,
.tutor-dashboard .tutor-dashboard-permalinks li.active a {
  background: var(--bas-primary);
  color: var(--bas-white) !important;
  transform: translateX(0.15rem);
}

.tutor-dashboard .tutor-dashboard-permalinks a:hover *,
.tutor-dashboard .tutor-dashboard-permalinks li.active a * {
  color: var(--bas-white) !important;
}

.tutor-dashboard .tutor-dashboard-permalinks li.active a {
  box-shadow: inset 0.22rem 0 var(--bas-secondary);
}

.tutor-dashboard .tutor-dashboard-content {
  min-width: 0;
}

.tutor-dashboard .tutor-dashboard-content > h2,
.tutor-dashboard .tutor-dashboard-content .tutor-fs-5,
.tutor-dashboard .tutor-dashboard-content .tutor-fs-4 {
  color: var(--bas-primary) !important;
  font-weight: 900;
}

.tutor-dashboard .tutor-dashboard-content > h2 {
  margin-bottom: 1.5rem;
  font-size: clamp(1.75rem, 4vw, 2.75rem);
}

.tutor-dashboard .tutor-dashboard-content .tutor-card,
.tutor-dashboard .tutor-dashboard-content .tutor-dashboard-info-card,
.tutor-dashboard .tutor-dashboard-content .tutor-table-responsive {
  border: 1px solid var(--dashboard-border) !important;
  border-radius: 0.75rem !important;
  background: var(--bas-white);
  box-shadow: var(--dashboard-shadow);
  overflow: hidden;
}

.tutor-dashboard .tutor-dashboard-content .tutor-card {
  height: 100%;
  transition:
    border-color 0.25s ease,
    box-shadow 0.25s ease,
    transform 0.25s ease;
}

.tutor-dashboard .tutor-dashboard-content .tutor-card:hover {
  border-color: rgba(177, 159, 90, 0.65) !important;
  box-shadow: 0 1rem 2.25rem rgba(40, 58, 97, 0.16);
  transform: translateY(-0.2rem);
}

.tutor-dashboard .tutor-dashboard-content .tutor-card-header,
.tutor-dashboard .tutor-dashboard-content .tutor-card-footer {
  border-color: var(--dashboard-border) !important;
  background: rgba(40, 58, 97, 0.035);
}

.tutor-dashboard .tutor-dashboard-content .tutor-icon,
.tutor-dashboard .tutor-dashboard-content [class*="tutor-icon-"] {
  color: var(--bas-secondary);
}

.tutor-dashboard .tutor-table {
  margin-bottom: 0;
  color: var(--bas-primary);
}

.tutor-dashboard .tutor-table thead th {
  padding: 0.9rem 1rem;
  border-bottom: 0;
  background: var(--bas-primary);
  color: var(--bas-white);
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.tutor-dashboard .tutor-table tbody td {
  padding: 0.9rem 1rem;
  border-color: var(--dashboard-border);
  color: var(--bas-primary);
  vertical-align: middle;
}

.tutor-dashboard .tutor-table tbody tr:nth-child(even) {
  background: rgba(40, 58, 97, 0.025);
}

.tutor-dashboard .tutor-table tbody tr:hover {
  background: rgba(177, 159, 90, 0.09);
}

.tutor-dashboard .tutor-form-label {
  color: var(--bas-primary);
  font-weight: 800;
}

.tutor-dashboard .tutor-form-control,
.tutor-dashboard .tutor-form-select {
  min-height: 2.8rem;
  border-color: rgba(40, 58, 97, 0.28);
  border-radius: 0.4rem;
  color: var(--bas-primary);
}

.tutor-dashboard .tutor-form-control:focus,
.tutor-dashboard .tutor-form-select:focus {
  border-color: var(--bas-secondary);
  box-shadow: 0 0 0 0.2rem rgba(177, 159, 90, 0.18);
}

.tutor-dashboard .tutor-btn {
  border-radius: 0.35rem;
  font-weight: 800;
}

.tutor-dashboard .tutor-btn-primary {
  background: var(--bas-secondary) !important;
  border-color: var(--bas-secondary) !important;
  color: var(--bas-white) !important;
}

.tutor-dashboard .tutor-btn-primary:hover {
  background: var(--bas-primary) !important;
  border-color: var(--bas-primary) !important;
}

.tutor-dashboard .tutor-progress-bar {
  border-radius: 2rem;
  background: rgba(40, 58, 97, 0.1);
  overflow: hidden;
}

.tutor-dashboard .tutor-progress-value {
  border-radius: 2rem;
  background: var(--bas-secondary) !important;
}

.tutor-dashboard .tutor-alert {
  border: 0;
  border-left: 0.25rem solid var(--bas-secondary);
  border-radius: 0.4rem;
  color: var(--bas-primary);
}

.tutor-dashboard .tutor-dashboard-left-menu .tutor-dashboard-permalinks li.active a {
  background-color: var(--bas-primary);
}

.tutor-dashboard .tutor-dashboard-left-menu .tutor-dashboard-menu-item-icon {
  color: var(--bas-primary);
}

.tutor-dashboard .tutor-dashboard-left-menu .tutor-dashboard-permalinks li a:hover {
  background-color: var(--bas-secondary);
}

/* ==== cursos single ==== */
.tutor-btn-primary {
  background-color: var(--bas-secondary);
  color: var(--bas-primary);
}

/* Tutor LMS single course */
.tutor-course-details-page {
  color: var(--bas-primary);
}

.tutor-course-details-page :is(h1, h2, h3, h4, h5, h6) {
  color: var(--bas-primary) !important;
  letter-spacing: 0;
}

.tutor-course-details-page p,
.tutor-course-details-page li,
.tutor-course-details-page .tutor-fs-6,
.tutor-course-details-page .tutor-color-secondary,
.tutor-course-details-page .tutor-color-muted {
  color: rgba(40, 58, 97, 0.78) !important;
  line-height: 1.6;
}

.tutor-course-details-page a {
  color: var(--bas-primary);
  text-decoration-color: rgba(177, 159, 90, 0.45);
  text-underline-offset: 0.18em;
}

.tutor-course-details-page a:hover {
  color: var(--bas-secondary);
}

.tutor-course-details-header {
  margin-bottom: 2rem;
  padding: 2.8rem 0 1.2rem;
  background: var(--bas-white) !important;
}

.tutor-course-details-title {
  max-width: 56rem;
  margin-bottom: 1.15rem !important;
  font-size: clamp(2.35rem, 5vw, 4.25rem) !important;
  font-weight: 900 !important;
  line-height: 1.04 !important;
  color: var(--bas-primary) !important;
  background: unset !important;
  -webkit-text-fill-color: unset !important;
  text-fill-color: unset !important;
}

.tutor-course-details-header .tutor-meta,
.tutor-course-details-header .tutor-meta > * {
  color: rgba(40, 58, 97, 0.72) !important;
  font-size: 0.92rem;
}

.tutor-course-details-header .tutor-ratings,
.tutor-course-details-header .tutor-ratings-stars {
  color: var(--bas-secondary) !important;
}

.tutor-course-details-page .tutor-course-thumbnail,
.tutor-course-details-page .tutor-course-thumbnail img,
.tutor-course-details-page .tutor-video-player,
.tutor-course-details-page iframe {
  width: 100%;
  border-radius: 18px !important;
}

.tutor-course-details-page .tutor-course-thumbnail img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  box-shadow: 0 0.75rem 1.8rem rgba(40, 58, 97, 0.16);
}

.tutor-course-details-content,
.tutor-course-details-widget,
.tutor-course-details-page .tutor-card,
.tutor-course-single-sidebar-wrapper .tutor-card,
.tutor-course-details-page .tutor-course-details-widget,
.tutor-course-details-page .tutor-course-content-list,
.tutor-course-details-page .tutor-course-benefits-wrap,
.tutor-course-details-page .tutor-course-requirements-content,
.tutor-course-details-page .tutor-course-target-audience,
.tutor-course-details-page .tutor-course-material-includes-wrap {
  border: 1px solid rgba(40, 58, 97, 0.16) !important;
  border-radius: 14px !important;
  background: var(--bas-white) !important;
  box-shadow: 0 0.55rem 1.45rem rgba(40, 58, 97, 0.08) !important;
}

.tutor-course-details-content,
.tutor-course-details-widget,
.tutor-course-details-page .tutor-course-benefits-wrap,
.tutor-course-details-page .tutor-course-requirements-content,
.tutor-course-details-page .tutor-course-target-audience,
.tutor-course-details-page .tutor-course-material-includes-wrap {
  padding: 1.35rem !important;
}

.tutor-course-details-content h2,
.tutor-course-details-content h3,
.tutor-course-details-widget-title,
.tutor-course-details-page .tutor-course-content-title,
.tutor-course-details-page .tutor-course-content-list-title {
  margin-bottom: 1rem !important;
  color: var(--bas-primary) !important;
  font-size: clamp(1.35rem, 2.5vw, 2rem) !important;
  font-weight: 900 !important;
  line-height: 1.15;
}

.tutor-course-details-widget-title::after,
.tutor-course-details-page .tutor-course-content-title::after {
  content: "";
  display: block;
  width: 3rem;
  height: 0.18rem;
  margin-top: 0.55rem;
  border-radius: 999px;
  background: var(--bas-gold-gradient);
}

.tutor-course-single-sidebar-wrapper {
  align-self: start;
}

.tutor-course-single-sidebar-wrapper .tutor-card,
.tutor-course-sidebar-card {
  padding: 1rem !important;
}

.tutor-course-single-sidebar-wrapper .tutor-course-sidebar-card-pricing,
.tutor-course-single-sidebar-wrapper .tutor-course-sidebar-card-body,
.tutor-course-single-sidebar-wrapper .tutor-course-details-widget {
  border-color: rgba(40, 58, 97, 0.14) !important;
}

.tutor-course-details-page .tutor-course-sidebar-card .tutor-fs-4,
.tutor-course-details-page .tutor-course-sidebar-card .tutor-fw-bold,
.tutor-course-details-page .tutor-course-sidebar-card .price {
  color: var(--bas-primary) !important;
  font-weight: 900 !important;
}

.tutor-course-details-page .tutor-course-details-widget-list,
.tutor-course-details-page .tutor-course-details-widget ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.tutor-course-details-page .tutor-course-details-widget-list li,
.tutor-course-details-page .tutor-course-details-widget ul li,
.tutor-course-details-page .tutor-course-sidebar-card li {
  display: flex;
  gap: 0.65rem;
  align-items: flex-start;
  padding: 0.68rem 0;
  border-bottom: 1px solid rgba(40, 58, 97, 0.1);
}

.tutor-course-details-page .tutor-course-details-widget-list li:last-child,
.tutor-course-details-page .tutor-course-details-widget ul li:last-child,
.tutor-course-details-page .tutor-course-sidebar-card li:last-child {
  border-bottom: 0;
}

.tutor-course-details-page :is(.tutor-icon, [class*="tutor-icon-"]) {
  color: var(--bas-secondary) !important;
}

.tutor-course-details-page .tutor-course-content-list {
  padding: 0 !important;
}

.tutor-course-details-page .tutor-course-content-list-item,
.tutor-course-details-page .tutor-accordion-item,
.tutor-course-details-page .tutor-course-topic {
  border-color: rgba(40, 58, 97, 0.12) !important;
}

.tutor-course-details-page .tutor-course-content-list-item,
.tutor-course-details-page .tutor-accordion-item-header,
.tutor-course-details-page .tutor-course-topic-title {
  padding: 1rem 1.15rem !important;
  color: var(--bas-primary) !important;
  font-weight: 800 !important;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.tutor-course-details-page .tutor-course-content-list-item:hover,
.tutor-course-details-page .tutor-accordion-item-header:hover {
  background-color: rgba(177, 159, 90, 0.1) !important;
  color: var(--bas-primary) !important;
}

.tutor-course-details-page .tutor-nav {
  border-bottom-color: rgba(40, 58, 97, 0.16) !important;
}

.tutor-course-details-page .tutor-nav-link {
  color: rgba(40, 58, 97, 0.72) !important;
  font-weight: 800;
}

.tutor-course-details-page .tutor-nav-link.is-active,
.tutor-course-details-page .tutor-nav-link:hover {
  color: var(--bas-primary) !important;
}

.tutor-course-details-page .tutor-nav-link.is-active::after {
  background: var(--bas-secondary) !important;
}

.tutor-course-details-page .tutor-btn,
.tutor-course-details-page .tutor-btn-primary,
.tutor-course-details-page .tutor-btn-outline-primary {
  border-radius: 5px !important;
  font-size: 0.83rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  padding: 0.72rem 1.2rem !important;
}

.tutor-course-details-page .tutor-btn-primary,
.tutor-course-details-page .tutor-btn-outline-primary {
  background: var(--bas-secondary) !important;
  background-image: none !important;
  border-color: var(--bas-secondary) !important;
  color: var(--bas-white) !important;
  box-shadow: 0 0.35rem 0.9rem rgba(177, 159, 90, 0.18);
}

.tutor-course-details-page .tutor-btn-primary:hover,
.tutor-course-details-page .tutor-btn-outline-primary:hover {
  background: var(--bas-primary) !important;
  background-image: none !important;
  border-color: var(--bas-primary) !important;
  color: var(--bas-white) !important;
  box-shadow: 0 0.65rem 1.3rem rgba(177, 159, 90, 0.28) !important;
}

.tutor-course-details-page .tutor-btn-secondary,
.tutor-course-details-page .tutor-btn-ghost {
  border-color: var(--bas-secondary) !important;
  color: var(--bas-secondary) !important;
  background: transparent !important;
}

.tutor-course-details-page .tutor-btn-secondary:hover,
.tutor-course-details-page .tutor-btn-ghost:hover {
  background: rgba(177, 159, 90, 0.1) !important;
  color: var(--bas-primary) !important;
}

.tutor-course-details-page .tutor-alert,
.tutor-course-details-page .tutor-course-details-widget-tags a,
.tutor-course-details-page .tutor-tag-list a {
  border-radius: 999px !important;
  border-color: rgba(177, 159, 90, 0.35) !important;
  background: rgba(177, 159, 90, 0.1) !important;
  color: var(--bas-primary) !important;
}

.tutor-course-details-page .tutor-avatar {
  border: 2px solid rgba(177, 159, 90, 0.45);
}

.tutor-course-details-page .tutor-row {
  row-gap: 1.5rem;
}

.tutor-course-details-page img,
.tutor-course-details-page video {
  max-width: 100%;
  height: auto;
}

@media (min-width: 992px) {
  .tutor-course-single-sidebar-wrapper {
    position: sticky;
    top: 8rem;
  }
}

@media (max-width: 991.98px) {
  .tutor-course-details-header {
    padding-top: 2rem;
  }

  .tutor-course-details-content,
  .tutor-course-details-widget,
  .tutor-course-details-page .tutor-course-benefits-wrap,
  .tutor-course-details-page .tutor-course-requirements-content,
  .tutor-course-details-page .tutor-course-target-audience,
  .tutor-course-details-page .tutor-course-material-includes-wrap {
    padding: 1rem !important;
  }
}

/* ===== mentorías ===== */
.mentorias {
  background: var(--bas-white);
  color: var(--bas-primary);
}

.mentorias .img-hero {
  content: "";
  position: absolute !important;
  inset: 0;
  background-repeat: no-repeat;
  background-size: cover;
  filter: grayscale(1);
  background-position: center;
}

.mentorias .h1,
.mentorias .h2,
.mentorias .h3 {
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
  color: var(--bas-primary);
  line-height: 1.1;
}

.mentorias .h1 {
  color: var(--bas-white);
  font-size: clamp(2.5rem, 7vw, 4.25rem);
  text-transform: none;
}

.mentorias .h2 {
  font-size: clamp(1.6rem, 3vw, 2.4rem);
}

.mentorias .h3 {
  font-size: 1.05rem;
  font-weight: 900;
  text-transform: uppercase;
}

.mentorias p {
  color: var(--bas-primary);
}

.mentorias .btn {
  border-radius: 2px;
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  padding: 0.72rem 1.15rem;
}

.mentorias .btn-primary {
  background-color: var(--bas-secondary);
  border-color: var(--bas-secondary);
  color: var(--bas-white);
}

.mentorias .btn-primary:hover {
  background-color: #958343;
  border-color: #958343;
  color: var(--bas-white);
}

.mentorias .hero,
.mentorias .cta-final {
  background-color: var(--bas-primary);
  background-position: center;
  background-size: cover;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

.mentorias .hero {
  min-height: 24rem;
  padding-top: 5rem;
  padding-bottom: 5rem;
}

/* .mentorias .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-size: cover;
  filter: grayscale(1);
  background-position: center;
}

.mentorias .hero::before {
  background-image: var(
    --mentorias-hero-img,
    url(./assets/img/mentoria_bg.jpg)
  );
} */

.mentorias .cta-final::before {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.mentorias .cta-final::before {
  background-image: var(--mentorias-cta-img, url(./assets/img/cta_bg.jpg));
}

.mentorias .hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(8, 22, 45, 0.78);
}

.mentorias .cta-final::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
}

.mentorias .hero > *,
.mentorias .cta-final > * {
  position: relative;
  z-index: 1;
}

.mentorias .hero .lead {
  max-width: 58rem;
  margin: 1.2rem auto 0;
  color: var(--bas-white);
  font-size: clamp(1rem, 2vw, 1.25rem);
  font-weight: 500;
}

.mentorias .intro,
.mentorias .programa,
.mentorias .formatos,
.mentorias .objetivo {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.mentorias .intro p,
.mentorias .programa .cierre p,
.mentorias .objetivo p {
  line-height: 1.35;
}

.mentorias .intro p:last-child,
.mentorias .programa .cierre p:last-child,
.mentorias .objetivo p:last-child {
  margin-bottom: 0;
}

.mentorias .programa {
  position: relative;
  padding-top: 12rem;
  overflow-x: hidden;
}

.mentorias .decor-text {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  color: rgba(40, 58, 97, 0.06);
  font-size: clamp(3rem, 10vw, 7.8rem);
  font-weight: 900;
  letter-spacing: 0.12em;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
  pointer-events: none;
}

.mentorias .programa-header-simple .h2 {
  margin-bottom: 2.5rem;
}

.mentorias .programa-header-doble {
  margin-bottom: 2.5rem;
}

.mentorias .programa-header-doble .eyebrow {
  margin-bottom: 0.75rem;
}

.mentorias .programa-header-doble .h2 {
  margin-bottom: 0;
}

.mentorias .programa-bloque {
  display: flex;
  flex-direction: column;
}

.mentorias .programa-bloque-heading {
  margin-bottom: 1.75rem;
}

.mentorias .programa-bloque-heading .eyebrow {
  margin-bottom: 0.75rem;
}

.mentorias .programa-bloque-heading .h2 {
  margin-bottom: 0;
}

.mentorias .programa-bloque .situacion-card {
  flex: 1 1 auto;
}

.mentorias .situacion-card,
.mentorias .formato-card {
  background: var(--bas-white);
  border: 1px solid rgba(177, 159, 90, 0.85);
  border-radius: 10px;
}

.mentorias .situacion-card {
  padding: 1.5rem;
}

.mentorias .situacion-card .h3 {
  margin-bottom: 1rem;
  color: var(--bas-secondary);
}

.mentorias .situacion-card ul {
  margin: 0;
  padding-left: 1.15rem;
}

.mentorias .situacion-card li {
  margin-bottom: 0.75rem;
  color: var(--bas-primary);
  font-size: 0.95rem;
  font-weight: 400;
  line-height: 1.3;
}

.mentorias .situacion-card li:last-child {
  margin-bottom: 0;
}

.mentorias .cierre {
  margin-top: 3.5rem;
}

.mentorias .franja {
  padding-top: 3rem;
  padding-bottom: 3rem;
  background: var(--bas-primary);
  text-align: center;
}

.mentorias .franja p {
  margin: 0 auto;
  color: var(--bas-white);
  font-size: clamp(1.25rem, 2.6vw, 2rem);
  font-weight: 900;
  line-height: 1.2;
}

.mentorias .formatos .h2,
.mentorias .objetivo .h2 {
  margin-bottom: 2rem;
  font-size: clamp(1.25rem, 2.5vw, 1.65rem);
  text-transform: uppercase;
}

.mentorias .formato-card {
  padding: 1.5rem;
  border-color: rgba(40, 58, 97, 0.18);
}

.mentorias .formato-card .h3 {
  margin-bottom: 0.7rem;
}

.mentorias .objetivo {
  padding-top: 2rem;
}

.mentorias .objetivo p {
  max-width: 64rem;
  font-size: clamp(1.05rem, 2vw, 1.35rem);
}

.mentorias .cta-final {
  min-height: 19rem;
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
}

.mentorias .cta-final .h2 {
  margin-bottom: 1.5rem;
  color: var(--bas-white);
  font-size: clamp(2rem, 5vw, 3.1rem);
}

/* ===== FOOTER ===== */
.site-footer {
  background: var(--bas-primary);
  color: var(--bas-white);
  margin-top: 0;
}

.footer-main {
  padding: 3.25rem 0 2rem;
}

.footer-top-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.25rem;
}

.footer-brand {
  max-width: 18rem;
}

.footer-brand img {
  width: min(100%, 17.5rem);
  height: auto;
  display: block;
}

.footer-brand p {
  margin: 2.25rem 0 0;
  color: var(--bas-white);
  font-size: 1rem;
  line-height: 1.25;
}

.footer-column h2 {
  margin: 0 0 1rem;
  color: var(--bas-secondary);
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1.1;
  text-transform: uppercase;
}

/* Redes sociales */
/* Métodos de pago */
.footer-column ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-column li + li {
  margin-top: 0.72rem;
}

.footer-column a {
  color: var(--bas-white);
  font-size: 1rem;
  line-height: 1.35;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-column a:hover {
  color: var(--bas-secondary);
}

.footer-divider {
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
  margin: 3rem 0 1.35rem;
  opacity: 1;
}

.footer-legal {
  display: block;
}

.footer-legal ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-legal a {
  color: var(--bas-white);
  font-size: 0.92rem;
  line-height: 1.35;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-legal a:hover {
  color: var(--bas-secondary);
}

/* Barra inferior créditos */
.colophon {
  background: var(--bas-black);
  padding: 0.75rem 0;
}

.colophon-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}

.footer-credit-link {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.85rem;
  font-weight: 400;
  transition: color 0.2s;
}

.footer-credit-link:hover {
  color: var(--bas-white);
}

.footer-credit-logo {
  height: 18px;
  width: auto;
}

/* ===== BOTÓN FLOTANTE CTA ===== */
.footer-to-top {
  bottom: 1.5rem !important;
}

/* ===== ACTUALIDAD (BLOG) ===== */
.actualidad {
  overflow-x: hidden;
  background: var(--bas-white);
}

.actualidad .hero {
  min-height: 17rem;
  padding-top: 4rem;
  padding-bottom: 4rem;
  background: var(--bas-primary);
  display: flex;
  align-items: center;
}

.actualidad .h1 {
  color: var(--bas-white);
  font-size: clamp(3rem, 6vw, 4.6rem);
  line-height: 1;
  text-transform: none;
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
}

.actualidad .blog-nav {
  padding-top: 3.7rem;
  padding-bottom: 3.5rem;
}

.actualidad .breadcrumb {
  align-items: center;
  gap: 0.4rem;
  color: var(--bas-primary);
  font-size: 1rem;
  font-weight: 600;
}

.actualidad .breadcrumb a {
  color: var(--bas-primary);
  text-decoration: none;
}

.actualidad .breadcrumb i {
  font-size: 1.65rem;
}

.actualidad .breadcrumb-item + .breadcrumb-item::before {
  content: ">";
  color: var(--bas-primary);
}

.actualidad .category-selector {
  min-width: 9rem;
  border: 1px solid rgba(40, 58, 97, 0.8);
  border-radius: 999px;
  color: var(--bas-primary);
  font-size: 1rem;
  font-weight: 600;
  padding: 0.52rem 1.25rem;
  background: var(--bas-white);
}

.actualidad .category-selector:hover,
.actualidad .category-selector:focus {
  border-color: var(--bas-secondary);
  color: var(--bas-primary);
  box-shadow: none;
}

.actualidad .dropdown-menu {
  border: 1px solid rgba(40, 58, 97, 0.18);
  border-radius: 8px;
}

.actualidad .dropdown-item {
  color: var(--bas-primary);
  font-weight: 600;
}

.actualidad .blog-listado {
  padding-bottom: 6rem;
}

/* Decoración campo */
.actualidad .blog-card {
  display: flex;
  flex-direction: column;
  border-radius: 18px;
}

/* Imagen hover */
.actualidad .blog-card-img {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 18px;
  text-decoration: none;
}

.actualidad .blog-card-img img {
  width: 100%;
  aspect-ratio: 4 / 3.15;
  display: block;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.actualidad .blog-card:hover .blog-card-img img {
  transform: scale(1.04);
}

.actualidad .blog-card-category {
  position: absolute;
  top: 1rem;
  left: 1.7rem;
  min-width: 4.4rem;
  padding: 0.25rem 0.65rem;
  border-radius: 999px;
  background: var(--bas-secondary);
  color: var(--bas-white);
  font-size: 0.78rem;
  font-weight: 700;
  text-align: center;
}

.actualidad .blog-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding-top: 1.15rem;
  scale: 1;
  transition: scale 0.2s;
}

.actualidad .blog-card:hover .blog-card-body {
  scale: 0.9;
  transition: scale 0.2s;
}

.actualidad .article-date {
  margin-bottom: 1.15rem;
  color: var(--bas-black);
  font-size: 1rem;
  font-weight: 500;
}

.actualidad .blog-title {
  margin-bottom: 1.25rem;
  font-size: clamp(1.45rem, 2.5vw, 2rem);
  line-height: 1.1;
}

.actualidad .blog-title a {
  color: var(--bas-primary);
  text-decoration: none;
  transition: opacity 0.2s;
}

.actualidad .blog-title a:hover {
  opacity: 0.8;
}

.actualidad .article-excerpt,
.actualidad .article-excerpt p {
  color: var(--bas-grey);
  font-size: 1rem;
  line-height: 1.25;
}

.actualidad .article-excerpt {
  margin-bottom: 1.5rem;
}

.actualidad .btn-blog {
  align-self: flex-end;
  min-width: 9.1rem;
  margin-top: auto;
  border: 1px solid var(--bas-secondary);
  border-radius: 3px;
  color: var(--bas-secondary);
  background: transparent;
  font-size: 0.9rem;
  font-weight: 900;
  text-transform: uppercase;
  padding: 0.72rem 1.35rem;
}

.actualidad .btn-blog:hover {
  background: var(--bas-secondary);
  color: var(--bas-white);
}

.actualidad .blog-pagination {
  display: flex;
  justify-content: flex-end;
  padding-top: 4rem;
}

/* Paginación bootscore overrides */
.actualidad .pagination .page-link {
  min-width: 2.1rem;
  height: 2.3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(40, 58, 97, 0.75);
  color: var(--bas-primary);
  margin: 0;
  border-radius: 0;
  font-weight: 600;
}

.actualidad .pagination .page-item.active .page-link {
  background-color: var(--bas-primary);
  border-color: var(--bas-primary);
  color: var(--bas-white);
}

/* ===== SINGLE POST ===== */
.single-post {
  background: var(--bas-white);
}

.single-post .hero {
  position: relative;
  min-height: 24rem;
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: var(--bas-primary);
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.single-post .hero::after,
.single-post .single-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(8, 22, 45, 0.72);
}

.single-post .hero > *,
.single-post .single-cta > * {
  position: relative;
  z-index: 1;
}

.single-post .h1 {
  color: var(--bas-white);
  font-size: clamp(2.8rem, 6vw, 4rem);
  line-height: 1.05;
  text-transform: none;
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
}

.single-post .single-post-content {
  padding-top: 4.5rem;
  padding-bottom: 4rem;
}

.single-post .entry-content,
.single-post .entry-content p,
.single-post .entry-content li {
  color: var(--bas-grey);
  font-size: clamp(1rem, 1.8vw, 1.16rem);
  line-height: 1.28;
}

.single-post .entry-content p,
.single-post .entry-content ul,
.single-post .entry-content ol {
  margin-bottom: 1.45rem;
}

.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4 {
  color: var(--bas-primary);
  font-weight: 900;
  margin-top: 2.5rem;
  margin-bottom: 1.2rem;
}

.single-post .entry-content img {
  width: 100%;
  height: auto;
  margin-top: 2.2rem;
  margin-bottom: 2.8rem;
  object-fit: cover;
}

.single-post .single-cta {
  position: relative;
  min-height: 24rem;
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: var(--bas-primary);
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.single-post .single-cta .h2 {
  margin-bottom: 1.25rem;
  color: var(--bas-white);
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.15;
}

.single-post .single-cta p {
  max-width: 48rem;
  margin: 0 auto 1.8rem;
  color: var(--bas-white);
  font-size: clamp(1rem, 2vw, 1.25rem);
  line-height: 1.25;
}

.single-post .single-cta-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.3rem;
}

.single-post .single-cta .btn {
  min-width: 15rem;
  border-radius: 3px;
  font-size: 0.95rem;
  font-weight: 900;
  text-transform: uppercase;
  padding: 0.9rem 1.5rem;
}

.single-post .single-cta .btn-primary {
  background-color: var(--bas-secondary);
  border-color: var(--bas-secondary);
  color: var(--bas-white);
}

.single-post .single-cta .btn-primary:hover {
  background-color: #958343;
  border-color: #958343;
  color: var(--bas-white);
}

.single-post .btn-outline-white {
  border: 2px solid var(--bas-white);
  color: var(--bas-white);
  background: transparent;
}

.single-post .btn-outline-white:hover {
  background-color: var(--bas-white) !important;
  color: var(--bas-primary) !important;
}

/* ===== 404 PAGE ===== */
.error-404-page {
  position: relative;
  overflow: hidden;
  background-color: var(--bas-white);
  min-height: 80vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.error-404-page .h1 {
  font-size: 4.5rem;
  color: var(--bas-primary);
  font-weight: 950;
  line-height: 1;
}

/* Ilustración Animada */
@keyframes ballPhysics {
  0%,
  100% {
    transform: translateY(-160px) rotate(-10deg) scaleX(0.95) scaleY(1.05);
    animation-timing-function: cubic-bezier(0.8, 0, 1, 1); /* Cae más rápido */
  }
  45% {
    transform: translateY(0) rotate(0deg) scaleX(1) scaleY(1);
    animation-timing-function: cubic-bezier(
      0,
      0,
      0.2,
      1
    ); /* Empieza a comprimirse */
  }
  50% {
    transform: translateY(0) rotate(0deg) scaleX(1.25) scaleY(0.75); /* Aplastado al impactar */
    animation-timing-function: cubic-bezier(0.8, 0, 1, 1); /* Rebota rápido */
  }
  55% {
    transform: translateY(0) rotate(0deg) scaleX(1) scaleY(1);
    animation-timing-function: cubic-bezier(
      0,
      0,
      0.2,
      1
    ); /* Desacelera al subir */
  }
}

/* Search bar 404 */
.error-404-page .form-control:focus {
  border-color: var(--bas-primary);
  box-shadow: none;
}

/* Decoración fondo 404 */
/* ===== 404 PAGE CURRENT ===== */
.error-404-page {
  background: var(--bas-white);
  color: var(--bas-primary);
}

.error-404-section {
  min-height: clamp(34rem, 72vh, 46rem);
  padding: 5rem 0 6rem;
  display: flex;
  align-items: center;
}

.error-404-content {
  max-width: 58rem;
  margin: 0 auto;
}

.error-404-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.4rem;
  padding: 0.42rem 0.9rem;
  border: 1px solid rgba(177, 159, 90, 0.5);
  border-radius: 999px;
  color: var(--bas-secondary);
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.error-404-number {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.45rem, 2vw, 1.2rem);
  margin-bottom: 1.4rem;
  color: var(--bas-primary);
  font-size: clamp(6.2rem, 20vw, 14rem);
  font-weight: 900;
  line-height: 0.85;
}

.error-404-ball-wrap {
  position: relative;
  width: 0.82em;
  height: 0.82em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.error-404-ball {
  position: relative;
  width: 0.72em;
  height: 0.72em;
  display: block;
  border-radius: 50%;
  background:
    radial-gradient(circle at 35% 28%, #f1ce77 0 12%, transparent 13%),
    linear-gradient(135deg, #f0b43f 0%, #c88422 48%, #8f5b1f 100%);
  box-shadow:
    inset -0.08em -0.1em 0 rgba(40, 58, 97, 0.22),
    0 0.16em 0.32em rgba(40, 58, 97, 0.2);
  animation: errorBallBounce 1.8s ease-in-out infinite;
}

.error-404-ball::before,
.error-404-ball::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  pointer-events: none;
}

.error-404-ball::before {
  border-left: 0.035em solid rgba(40, 58, 97, 0.72);
  border-right: 0.035em solid rgba(40, 58, 97, 0.72);
  transform: rotate(18deg);
}

.error-404-ball::after {
  background:
    linear-gradient(
      90deg,
      transparent 47%,
      rgba(40, 58, 97, 0.74) 48% 52%,
      transparent 53%
    ),
    linear-gradient(
      0deg,
      transparent 47%,
      rgba(40, 58, 97, 0.74) 48% 52%,
      transparent 53%
    );
}

.error-404-ball-shadow {
  position: absolute;
  left: 50%;
  bottom: 0.03em;
  width: 0.62em;
  height: 0.08em;
  border-radius: 50%;
  background: rgba(40, 58, 97, 0.24);
  filter: blur(0.04em);
  transform: translateX(-50%);
  animation: errorBallShadow 1.8s ease-in-out infinite;
}

.error-404-page .h1 {
  margin-bottom: 0.75rem;
  color: var(--bas-primary);
  font-size: clamp(2.15rem, 5vw, 4.2rem);
  font-weight: 900;
  line-height: 1;
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
  text-transform: none;
}

.error-404-page .lead {
  max-width: 42rem;
  margin: 0 auto 0.65rem;
  color: var(--bas-primary);
  font-size: clamp(1.2rem, 2.5vw, 1.75rem);
  line-height: 1.25;
}

.error-404-text {
  max-width: 32rem;
  margin: 0 auto;
  color: rgba(40, 58, 97, 0.78);
  font-size: 1rem;
  line-height: 1.55;
}

.error-404-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 2rem;
}

.error-404-actions .btn {
  min-width: 10rem;
  border-radius: 4px;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.error-404-actions .btn-primary-outline {
  border: 1px solid var(--bas-secondary);
  color: var(--bas-secondary);
  background: transparent;
}

.error-404-actions .btn-primary-outline:hover {
  border-color: var(--bas-secondary);
  color: var(--bas-white);
  background: var(--bas-secondary);
  background-image: none;
}

@keyframes errorBallBounce {
  0%,
  100% {
    transform: translateY(-0.16em) rotate(-8deg);
  }

  50% {
    transform: translateY(0.12em) rotate(8deg);
  }
}

@keyframes errorBallShadow {
  0%,
  100% {
    opacity: 0.2;
    transform: translateX(-50%) scale(0.68);
  }

  50% {
    opacity: 0.42;
    transform: translateX(-50%) scale(1);
  }
}

/* ==== CONTACTO ==== */
.contacto {
  overflow-x: hidden;
  background: var(--bas-white);
}

.contacto .hero {
  padding-top: 6rem;
  padding-bottom: 3.2rem;
}

.contacto .h1 {
  margin-bottom: 0.65rem;
  color: var(--bas-primary);
  font-size: clamp(2rem, 6vw, 4rem);
  line-height: 1;
  text-transform: none;
  background: unset;
  -webkit-text-fill-color: unset;
  text-fill-color: unset;
}

.contacto .lead {
  max-width: 55rem;
  margin: 0 auto;
  color: var(--bas-primary);
  font-size: clamp(1rem, 2vw, 1.4rem);
  line-height: 1.15;
}

.contacto .lead strong {
  font-weight: 900;
}

.contacto .contacto-main {
  padding-top: 1.8rem;
  padding-bottom: 7rem;
}

/* Ninja Forms Styling */
.contacto .nf-form-content {
  padding: 0 !important;
  max-width: none !important;
}

.contacto .nf-field-container {
  margin-bottom: 1rem !important;
}

.contacto .nf-field-label label {
  font-family: Arial, Helvetica, sans-serif;
  color: var(--bas-black) !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
}

.contacto .ninja-forms-field,
.contacto .nf-field-element input:not([type="submit"]),
.contacto .nf-field-element textarea,
.contacto .nf-field-element select {
  min-height: 3.35rem !important;
  background-color: #f0f0f0 !important;
  border: 1px solid transparent !important;
  border-radius: 10px !important;
  padding: 0.8rem 1.1rem !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.05rem !important;
  color: var(--bas-primary) !important;
  transition:
    border-color 0.2s,
    background-color 0.2s !important;
  width: 100% !important;
}

.contacto .nf-field-element textarea {
  min-height: 9.2rem !important;
}

.contacto .nf-field-element input:focus,
.contacto .nf-field-element textarea:focus,
.contacto .nf-field-element select:focus {
  border-color: var(--bas-primary) !important;
  background-color: var(--bas-white) !important;
  outline: none !important;
}

/* Submit Button */
.contacto .nf-field-element input[type="submit"],
.contacto .nf-field-element input[type="button"] {
  min-width: 16.5rem;
  background-color: var(--bas-secondary) !important;
  color: var(--bas-white) !important;
  border: none !important;
  border-radius: 3px !important;
  padding: 0.95rem 1.5rem !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  cursor: pointer !important;
  transition:
    transform 0.2s,
    background-color 0.2s !important;
  width: auto !important;
  display: inline-block !important;
}

.contacto .nf-field-element input[type="submit"]:hover,
.contacto .nf-field-element input[type="button"]:hover {
  background-color: #958343 !important;
  transform: translateY(-2px);
}

/* Checkbox / Privacy */
.contacto .nf-field-element .ninja-forms-field[type="checkbox"] {
  width: 1.25rem !important;
  height: 1.25rem !important;
  min-height: 1.25rem !important;
  margin-right: 0.6rem !important;
  background-color: var(--bas-white) !important;
  border: 1px solid var(--bas-primary) !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

.contacto .nf-field-element .nf-field-label label {
  display: inline-block !important;
  margin-bottom: 0 !important;
  font-weight: 400 !important;
  font-size: 1rem !important;
}

.contacto .contacto-img {
  width: 100%;
  aspect-ratio: 1.03 / 1;
  object-fit: cover;
  display: block;
  border-radius: 20px;
  filter: grayscale(1);
}

/* datos contacto */
.contacto .contacto-datos {
  margin-top: 3rem;
}

.contacto .contacto-card {
  padding: 1.65rem 2rem;
  border: 1px solid rgba(177, 159, 90, 0.85);
  border-radius: 18px;
  background: var(--bas-white);
}

.contacto .contacto-card .rrss-logo {
  max-height: 1rem;
}

.contacto .contacto-card-heading {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 0.9rem;
  color: var(--bas-secondary);
}

.contacto .contacto-card svg {
  flex: 0 0 auto;
  color: var(--bas-secondary);
}

.contacto .contacto-card .h3 {
  margin: 0;
  color: var(--bas-secondary);
  font-size: clamp(1.15rem, 2vw, 1.55rem);
  text-transform: uppercase;
}

.contacto .contacto-card p,
.contacto .contacto-card a {
  margin: 0;
  color: var(--bas-secondary);
  font-size: clamp(0.75rem, 1.55vw, 1rem);
  text-decoration: none;
}

@media (max-width: 992px) {
  .error-404-page {
    text-align: center;
    padding-top: 3rem;
  }

  .error-404-page .h1 {
    font-size: 2.8rem;
  }
}

/* ==== WooCommerce Single Product Page ===== */

/* Title */
.single-product .page-title,
.single-product .product_title {
  font-size: clamp(2.2rem, 4.5vw, 4.06rem) !important;
  font-weight: 900 !important;
  background: var(--bas-degradado) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-fill-color: transparent !important;
  line-height: 1.1 !important;
  margin-bottom: 1.5rem !important;
}

.single-product .site-content a {
  color: var(--bas-primary) !important;
}

/* Price */
.single-product .summary .price {
  font-size: 2.25rem !important;
  font-weight: 900 !important;
  color: var(--bas-primary) !important;
  margin-bottom: 2rem !important;
}

.single-product .summary .price ins {
  text-decoration: none !important;
}

/* Base Summary Styling */
.single-product .summary .woocommerce-product-details__short-description {
  margin-bottom: 2.5rem !important;
}

.single-product .summary .woocommerce-product-details__short-description p {
  font-size: 1.25rem !important;
  color: var(--bas-primary) !important;
}

/* Add to Cart Section */
.single-product .cart {
  display: flex !important;
  align-items: center !important;
  gap: 1.5rem !important;
  margin-bottom: 3rem !important;
}

/* Quantity */
.single-product .quantity {
  margin: 0 !important;
}

.single-product .quantity .qty {
  width: 70px !important;
  height: 54px !important;
  border-radius: 8px !important;
  border: 2px solid var(--bas-primary) !important;
  background: transparent !important;
  color: var(--bas-primary) !important;
  font-weight: 800 !important;
  font-size: 1.1rem !important;
  padding: 0 10px !important;
}

/* Add to Cart Button */
.single-product .single_add_to_cart_button.button.alt {
  height: 54px !important;
  padding: 0 2.5rem !important;
  background: var(--bas-secondary) !important;
  border: none !important;
  border-radius: 8px !important;
  color: var(--bas-black) !important;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 900 !important;
  font-size: 0.95rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: 0 4px 15px rgba(204, 204, 204, 0.2) !important;
}

.single-product .single_add_to_cart_button.button.alt:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 25px rgba(12, 137, 188, 0.4) !important;
  filter: brightness(1.1) !important;
}

.single-product .product_type_simple {
  background: var(--bas-secondary) !important;
  color: var(--bas-black) !important;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 900 !important;
  font-size: 0.95rem !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 8px !important;
}

.single-product .product_type_simple:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 25px rgba(12, 137, 188, 0.4) !important;
  filter: brightness(1.1) !important;
}
/* Tabs Redesign */
.woocommerce-tabs {
  margin-top: 5rem !important;
  padding-top: 3rem !important;
  border-top: 1px solid rgba(4, 44, 69, 0.1) !important;
}

.woocommerce-tabs ul.tabs {
  background: transparent !important;
  border: none !important;
  display: flex !important;
  justify-content: flex-start !important;
  gap: 3rem !important;
  padding: 0 !important;
  margin-bottom: 2.5rem !important;
}

.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs::after {
  display: none !important;
}

.woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 3px solid transparent !important;
  transition: all 0.3s ease !important;
}

.woocommerce-tabs ul.tabs li a {
  padding: 0 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  font-size: 0.825rem !important;
  color: var(--bas-primary) !important;
  opacity: 0.5 !important;
}

.woocommerce-tabs ul.tabs li.active {
  border-bottom-color: var(--bas-primary) !important;
}

.woocommerce-tabs ul.tabs li.active a {
  opacity: 1 !important;
  color: var(--bas-primary) !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel {
  color: var(--bas-primary) !important;
  font-size: 1.125rem !important;
  line-height: 1.7 !important;
}

/* Product Meta */
.single-product .product_meta {
  border-top: 1px solid rgba(4, 44, 69, 0.1) !important;
  padding-top: 1.5rem !important;
  font-size: 0.9rem !important;
  color: var(--bas-primary) !important;
  opacity: 0.8 !important;
}

.single-product .product_meta span {
  display: block !important;
  margin-bottom: 0.5rem !important;
}

.single-product .product_meta a {
  color: var(--bas-primary) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

/* Related Products */
.related.products {
  margin-top: 6rem !important;
  padding-top: 4rem !important;
  border-top: 2px solid var(--bas-primary) !important;
}

.related.products h2 {
  font-size: 2.5rem !important;
  font-weight: 900 !important;
  color: var(--bas-primary) !important;
  margin-bottom: 3rem !important;
  text-align: center !important;
}

.single-product .onsale {
  background-color: var(--bas-secondary) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  padding: 10px !important;
  min-height: auto !important;
  min-width: auto !important;
  border-radius: 5px !important;
}

/* ==== WooCommerce Checkout (Blocks & Traditional) ==== */

/* General / Containers */
.woocommerce-checkout h3,
.wc-block-checkout__billing-address h2,
.wc-block-checkout__shipping-address h2,
.wc-block-components-title,
.wc-block-checkout__order-summary-title {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.25rem !important;
  font-weight: 900 !important;
  color: var(--bas-primary) !important;
  text-transform: uppercase !important;
  margin-bottom: 0.75rem !important;
  margin-top: 0 !important;
}

/* Fields Styling - Mobile First */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout select,
.wc-block-components-text-input input,
.wc-block-components-textarea textarea,
.wc-block-components-combobox .wc-block-components-combobox__input,
.wc-block-components-select-input select {
  background-color: var(--bas-grey-10) !important;
  border: 2px solid transparent !important;
  border-radius: 10px !important;
  padding: 30px 20px 10px 20px !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1rem !important;
  color: var(--bas-primary) !important;
  transition: all 0.3s ease !important;
  width: 100% !important;
  height: auto !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.wc-block-components-text-input input:focus,
.wc-block-components-textarea textarea:focus {
  border-color: var(--bas-primary) !important;
  background-color: var(--bas-white) !important;
  outline: none !important;
  box-shadow: 0 4px 12px rgba(12, 137, 188, 0.1) !important;
}

/* Labels */
.woocommerce-checkout .form-row label,
.wc-block-components-text-input label,
.wc-block-components-textarea label,
.wc-block-components-single-select-input label {
  font-family: Arial, Helvetica, sans-serif;
  color: var(--bas-primary) !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  margin-bottom: 0.5rem !important;
  display: block !important;
}

/* Order Review / Sidebar */
#order_review,
.wc-block-checkout__sidebar {
  background-color: var(--bas-white) !important;
  border: 2px solid var(--bas-primary) !important;
  border-radius: 20px !important;
  padding: 1.25rem !important;
  margin-top: 3rem !important;
  box-shadow: 0 15px 35px rgba(4, 44, 69, 0.08) !important;
}

.wp-block-woocommerce-checkout-order-summary-block {
  border: 0;
}

/* Order Table Styles (Traditional) */
.shop_table.woocommerce-checkout-review-order-table th,
.shop_table.woocommerce-checkout-review-order-table td {
  border: none !important;
  font-family: Arial, Helvetica, sans-serif;
  padding: 10px 0 !important;
}

.shop_table.woocommerce-checkout-review-order-table tr.cart_item {
  border-bottom: 1px solid #eee !important;
}

.shop_table.woocommerce-checkout-review-order-table .product-total,
.shop_table.woocommerce-checkout-review-order-table .order-total {
  color: var(--bas-primary) !important;
  font-weight: 900 !important;
}

/* Blocks sidebar summary items */
.wc-block-components-totals-item {
  padding: 10px 0 !important;
  font-family: Arial, Helvetica, sans-serif;
}

.wc-block-components-totals-item .wc-block-components-totals-item__label {
  color: var(--bas-primary) !important;
  font-weight: 600 !important;
}

.wc-block-common-comps-checkout-totals-item__value {
  color: var(--bas-primary) !important;
  font-weight: 900 !important;
}

/* Payment Methods */
#payment ul.payment_methods,
.wc-block-checkout__payment-method {
  border: none !important;
  background: none !important;
  padding: 0 !important;
}

.wc-block-checkout__payment-method div[role="radio"] {
  background-color: var(--bas-grey) !important;
  border: 2px solid transparent !important;
  border-radius: 12px !important;
  padding: 1rem !important;
  margin-bottom: 0.75rem !important;
  transition: all 0.3s ease !important;
}

.wc-block-checkout__payment-method div[role="radio"][aria-checked="true"] {
  border-color: var(--bas-primary) !important;
  background-color: var(--bas-white) !important;
}

/* Place Order Button */
#place_order,
.wc-block-components-checkout-place-order-button {
  background: var(--bas-secondary) !important;
  color: var(--bas-primary) !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 18px 30px !important;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  width: 100% !important;
  font-size: 1.1rem !important;
  margin-top: 1.5rem !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

#place_order:hover,
.wc-block-components-checkout-place-order-button:hover {
  background: #e6d700 !important;
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(255, 238, 0, 0.3) !important;
}

/* Notice / Alerts */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
  border-top: 4px solid var(--bas-primary) !important;
  background-color: var(--bas-grey) !important;
  border-radius: 10px !important;
  color: var(--bas-primary) !important;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700 !important;
}

/* Desktop Styles */

/* Final Polish: Custom Checkbox */
.woocommerce-form__input-checkbox,
.wc-block-components-checkbox input {
  width: 20px !important;
  height: 20px !important;
  border: 2px solid var(--bas-primary) !important;
  border-radius: 4px !important;
  accent-color: var(--bas-primary) !important;
}

/* Coupon / Promotional */
.wc-block-checkout__coupon-allowance {
  border-top: 1px dashed rgba(4, 44, 69, 0.2) !important;
  padding-top: 1.5rem !important;
  margin-top: 1.5rem !important;
}

.wc-block-checkout__coupon-allowance button.wc-block-components-button {
  color: var(--bas-primary) !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Checkout Items List */
.wc-block-components-product-list-item {
  padding: 1.5rem 0 !important;
  border-bottom: 1px solid rgba(4, 44, 69, 0.05) !important;
}

.wc-block-components-product-name {
  color: var(--bas-primary) !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
}

.wc-block-components-product-metadata {
  font-size: 0.85rem !important;
  color: #666 !important;
}

/* ==== MEDIA QUERIES ==== */

@media (min-width: 768px) {
  /* blog - single*/
  .single-post .hero {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .pagination-single {
    flex-direction: row;
  }

  /* footer*/
  .footer-top-row {
    grid-template-columns: minmax(14rem, 1.15fr) minmax(10rem, 0.85fr) minmax(
        10rem,
        0.85fr
      );
    gap: 3rem;
    align-items: start;
  }

  .footer-brand img {
    width: min(100%, 18rem);
  }

  /* Subimos el botón 'To top' para que no lo tape la barra de CTA */
  .footer-to-top {
    bottom: 1.5rem !important;
  }
}
@media (min-width: 992px) {
  /* Blog */
  .blog-decoration {
    display: block;
  }

  /* Blocks desktop */
  .wc-block-checkout.is-asides {
    display: grid !important;
    grid-template-columns: 1fr 420px !important;
    gap: 4rem !important;
    align-items: start !important;
  }

  .wc-block-checkout__sidebar {
    margin-top: 0 !important;
    position: sticky !important;
    top: 120px !important;
  }

  /* Traditional desktop */
  .woocommerce-checkout .col2-set {
    width: 60% !important;
    float: left !important;
    padding-right: 2rem !important;
  }

  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review {
    width: 35% !important;
    float: left !important;
  }

  .woocommerce-checkout:after {
    content: "";
    display: table;
    clear: both;
  }
}

/* Custom Blocks Visibility (Search & User Menu) */
@media (max-width: 469.98px) {
  .d-custom-block-desktop {
    display: none !important;
  }
}

@media (min-width: 470px) {
  .d-custom-block-mobile {
    display: none !important;
  }
}

/* ==== dynamic visual system ==== */
.inicio .h1 span {
  position: relative;
  display: inline-block;
  color: var(--bas-secondary);
  white-space: nowrap;
}

.btn,
.tutor-btn,
.contacto .nf-field-element input[type="submit"],
.contacto .nf-field-element input[type="button"],
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.wc-block-components-button:not(.is-link) {
  background-image: none !important;
}

.btn-primary,
.header-contact,
.inicio .btn-primary,
.mentorias .btn-primary,
.single-post .single-cta .btn-primary,
.contacto .nf-field-element input[type="submit"],
.contacto .nf-field-element input[type="button"],
.tutor-card.tutor-course-card .tutor-btn.tutor-btn-outline-primary,
.tutor-card.tutor-course-card .tutor-btn.tutor-btn-primary,
.tutor-btn-primary,
.single-product .single_add_to_cart_button.button.alt,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.wc-block-components-button:not(.is-link),
.btn-cta {
  font-weight: 600;
  background: var(--bas-secondary) !important;
  background-image: none !important;
  border-color: var(--bas-secondary) !important;
  color: var(--bas-white) !important;
  box-shadow: 0 0.35rem 0.9rem rgba(177, 159, 90, 0.18);
  transition:
    background-color 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease,
    box-shadow 0.25s ease,
    color 0.25s ease !important;
}

.btn-primary:hover,
.header-contact:hover,
.inicio .btn-primary:hover,
.mentorias .btn-primary:hover,
.single-post .single-cta .btn-primary:hover,
.contacto .nf-field-element input[type="submit"]:hover,
.contacto .nf-field-element input[type="button"]:hover,
.tutor-card.tutor-course-card .tutor-btn.tutor-btn-outline-primary:hover,
.tutor-card.tutor-course-card .tutor-btn.tutor-btn-primary:hover,
.tutor-btn-primary:hover,
.single-product .single_add_to_cart_button.button.alt:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.wc-block-components-button:not(.is-link):hover,
.btn-cta:hover {
  background: var(--bas-primary) !important;
  background-image: none !important;
  border-color: var(--bas-primary) !important;
  color: var(--bas-white) !important;
  box-shadow: 0 0.65rem 1.3rem rgba(177, 159, 90, 0.28) !important;
  transform: translateY(-2px);
}

.inicio .btn-primary-outline,
.actualidad .btn-blog,
.single-post .btn-outline-white {
  background: transparent !important;
  background-image: none !important;
  border-color: var(--bas-secondary) !important;
  color: var(--bas-secondary) !important;
  transition:
    background-color 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease,
    box-shadow 0.25s ease,
    color 0.25s ease !important;
}

.inicio .btn-primary-outline:hover,
.actualidad .btn-blog:hover {
  background: var(--bas-secondary) !important;
  background-image: none !important;
  border-color: var(--bas-secondary) !important;
  color: var(--bas-white) !important;
  box-shadow: 0 0.65rem 1.3rem rgba(177, 159, 90, 0.24);
  transform: translateY(-2px);
}

.single-post .btn-outline-white {
  border-color: var(--bas-white) !important;
  color: var(--bas-white) !important;
}

.inicio .servicio-card,
.inicio .testimonio-card,
.mentorias .situacion-card,
.mentorias .formato-card,
.actualidad .blog-card,
.contacto .contacto-card,
.tutor-card.tutor-course-card,
.woocommerce ul.products li.product,
.woocommerce .product .summary,
.woocommerce-checkout #order_review,
.wc-block-components-sidebar,
.wc-block-components-totals-wrapper {
  transition:
    background 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}

/* .inicio .servicio-card:hover,
.inicio .testimonio-card:hover,
.mentorias .formato-card:hover,
.actualidad .blog-card:hover,
.contacto .contacto-card:hover,
.tutor-card.tutor-course-card:hover,
.woocommerce ul.products li.product:hover {
  background: var(--bas-card-gradient) !important;
  border-color: transparent !important;
  box-shadow: 0 1rem 2rem rgba(8, 22, 45, 0.22) !important;
  color: var(--bas-white) !important;
  transform: translateY(-4px);
} */

/* .inicio .servicio-card:hover :is(.h3, p, a, li),
.inicio
  .testimonio-card:hover
  :is(.testimonio-nombre, .testimonio-cargo, .testimonio-texto, p),
.mentorias .formato-card:hover :is(.h3, p),
.actualidad
  .blog-card:hover
  :is(.blog-title a, .article-date, .article-excerpt, .article-excerpt p),
.contacto .contacto-card:hover :is(.h3, p, a),
.tutor-card.tutor-course-card:hover
  :is(.tutor-course-name, .tutor-course-name a),
.woocommerce
  ul.products
  li.product:hover
  :is(h2, h3, .woocommerce-loop-product__title, .price, a) {
  color: var(--bas-white) !important;
} */

.inicio .servicio-card:hover .item-line p {
  color: var(--bas-primary) !important;
}

.inicio .servicio-card:hover :is(svg path, .servicio-icon-default),
.contacto .contacto-card:hover svg,
.mentorias .situacion-card:hover .h3,
.mentorias .formato-card:hover .h3 {
  color: var(--bas-secondary) !important;
  fill: var(--bas-secondary) !important;
  stroke: var(--bas-secondary) !important;
}

.fade-reveal-item {
  --reveal-delay: 0ms;
  --reveal-distance: 1.25rem;
  opacity: 0;
  transform: translateY(var(--reveal-distance));
  transition:
    opacity 0.68s ease var(--reveal-delay),
    transform 0.68s ease var(--reveal-delay);
  will-change: opacity, transform;
}

.fade-reveal-item.is-visible {
  opacity: 1;
  transform: none;
}

.contacto,
.contacto *,
.contacto *::before,
.contacto *::after {
  scroll-behavior: auto !important;
  transition: none !important;
  animation: none !important;
}

.contacto .nf-field-element input[type="submit"]:hover,
.contacto .nf-field-element input[type="button"]:hover,
.contacto .contacto-card:hover {
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  .btn-primary:hover,
  .header-contact:hover,
  .btn-cta:hover,
  .inicio .btn-primary:hover,
  .inicio .btn-primary-outline:hover,
  .mentorias .btn-primary:hover,
  .actualidad .btn-blog:hover,
  .single-post .single-cta .btn-primary:hover,
  .contacto .nf-field-element input[type="submit"]:hover,
  .contacto .nf-field-element input[type="button"]:hover,
  .inicio .servicio-card:hover,
  .inicio .testimonio-card:hover,
  .mentorias .situacion-card:hover,
  .mentorias .formato-card:hover,
  .actualidad .blog-card:hover,
  .contacto .contacto-card:hover,
  .tutor-card.tutor-course-card:hover,
  .woocommerce ul.products li.product:hover {
    transform: none !important;
    background-position: 50% 50% !important;
  }

  .fade-reveal-item {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .error-404-ball,
  .error-404-ball-shadow {
    animation: none !important;
  }
}

@media (max-width: 767.98px) {
  .tutor-dashboard .tutor-dashboard-header {
    padding: 1.35rem;
    text-align: center;
  }

  .tutor-dashboard .tutor-dashboard-header-info {
    align-items: center;
  }

  .tutor-dashboard .tutor-dashboard-permalinks {
    margin-bottom: 1.5rem;
  }

  .tutor-dashboard .tutor-dashboard-content .tutor-card:hover {
    transform: none;
  }

  .tutor-dashboard .tutor-table thead {
    display: none;
  }

  .tutor-dashboard .tutor-table tbody tr,
  .tutor-dashboard .tutor-table tbody td {
    display: block;
    width: 100%;
  }

  .tutor-dashboard .tutor-table tbody tr {
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--dashboard-border);
  }

  .tutor-dashboard .tutor-table tbody td {
    padding: 0.45rem 0.85rem;
    border: 0;
  }
}
