body {
    background: #ffffff;
    color: #474747;
    font-family: "Caudex", serif;
    font-size: 15px
}
img {
    aspect-ratio: attr(width)/attr(height)
}

.caudex-regular {
    font-family: "Caudex", system-ui;
    font-weight: 400;
    font-style: normal;
  }
  


h1,
h2,
h3,
h4 {
    color: #b600cc !important;
   
}

.fondo-3{
    background-color: #ffffff;
background-image: linear-gradient(138deg, #ffffff 0%, #ffffff 50%, #e5c7e7 100%);

}




.border-primary{
   border-color: #b600cc !important;
}
.btn {
    border-radius: 2rem;
    padding: .6rem 2rem;
    font-size: 1.2rem
}
@media (min-width: 768px) {
    .btn {
        border-radius: 2rem;
        padding: .4rem .5rem;
        font-size: .7rem
    }
}
@media (min-width: 990px) {
    .btn {
        border-radius: 2rem;
        padding: .6rem 2rem;
        font-size: .7rem
    }
}
.bg-primary {
    background-color: #892ef9 !important
}
.text-primary {
    color: #b600cc !important
}
.bg-fondo {
    background-color: #ffffff;
    opacity: 0.8
}
.bg-fondo1 {
    -webkit-box-shadow: 7px 8px 41px -8px rgba(194, 14, 230, 0.73);
    box-shadow: 7px 8px 41px -8px #c20ee6ba;
    opacity: 0.5
}
.bg-fondo2{
    
    background-color:  #e3b4ea !important;
    /* opacity: 0.8; */
    font-weight:bold;
}

.bg-fondo-footer{
    background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%) !important;
    color: #fff;
    font-weight: bold;
}

.btn-primary {
    color: #ffffff;
    /* background-color: rgba(194, 14, 230, 0.73); */

    background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%);
    border-color: rgba(194, 14, 230, 0.73);
    position: relative;
    overflow: hidden;
    z-index: 1;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    font-weight: bold;
    font-size: 16px;
}
.btn-primary:hover {
    color: #474747;
    background-color: #fdb94b;
    border-color: #892ef9
}
.btn-primary:active {
    color: rgba(194, 14, 230, 0.73) !important;
    background-color: #9747fa !important;
    border-color: #a560fa !important
}
.btn-primary:focus {
    color: rgba(194, 14, 230, 0.73) !important;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(137, 46, 249, 0.5) !important;
    box-shadow: 0 0 0 0.2rem rgba(137, 46, 249, 0.5) !important
}
/* .btn-primary::after {
    font-family: 'Font Awesome 6 Pro';
    font-weight: 900;
    content: "\f138";
    position: relative;
    left: .6rem;
    top: .1rem;
    -webkit-transition: left .3s ease;
    transition: left .3s ease
} */
.btn-primary:hover:after,
.btn-primary:active:after,
.btn-primary:focus:after {
    left: .25rem
}
.btn-primary:before {
    content: "";
    z-index: -1;
    width: 0;
    height: 100%;
    background: #ffffff;
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: skew(45deg, 0);
    transform: skew(45deg, 0);
    -webkit-transition: all .4s ease;
    transition: all .4s ease
}
.btn-primary:hover:before,
.btn-primary:active:before,
.btn-primary:focus:before {
    width: 130px;
    left: -15%
}
.bg-secondary {
    background-color: rgba(194, 14, 230, 0.73) !important;
    
}
.text-secondary {
    color: #fdb94b
}
a {
    text-decoration: none;
    color: #474747
}
a:hover {
    text-decoration: none;
    color: #fdb94b
}

#navegacion .navbar-brand img {
    width: 7rem;
    height: auto
}
#navegacion .container {
    max-width: 100%
}
/* #navegacion .btn-telefono:hover,
#navegacion .btn-telefono:focus,
#navegacion .btn-telefono {
    border: none !important
} */
#navegacion .dropdown-toggle::after {
    display: none
}
.navbar-dark .navbar-toggler,
.navbar-dark .navbar-toggler .collapse,
.button.navbar-toggler,
#navegacion>div>button {
    color: #ffffff !important;
    border-color: rgba(194, 14, 230, 0.88) !important;
    border: 0
}
.button.navbar-toggler:focus,
#navegacion>div>button:focus {
    outline: 0
}
#menu-navegacion .navbar-toggler {
    padding: 0;
    font-size: .5rem;
    line-height: 1;
    background-color: transparent;
    border: none;
    border-radius: 0;
    outline: 0
}
/* #menu-navegacion .boton-menu::before {
    font-family: 'Font Awesome 6 Pro';
    content: "\f0c9";
    font-weight: bold;
    font-size: 2.5rem;
    color: #ffffff
}
#menu-navegacion .icono-cerrar::before {
    content: "\f00d";
    position: relative;
    left: .2rem
} */
.navbar-dark .navbar-nav .nav-link {
    color: #ffffff;
    padding: 0.6rem 1rem;
    font-size: 1rem;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-radius: .5rem;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}
/* .navbar-dark .navbar-nav .nav-link:after {
    font-family: 'Font Awesome 6 Pro';
    content: "\f054";
    font-weight: 900;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
} */
.navbar-dark .navbar-nav .nav-link:hover {
    background-color: rgba(211, 52, 243, 0.80);
    border-color: #ffffff
}
.navbar-dark .navbar-nav .nav-link:hover:after {
    -webkit-transform: rotateZ(180deg);
    transform: rotateZ(180deg)
}
.navbar-dark .navbar-nav .nav-link.active {
    background-color: #892ef9;
    color: #ffffff
}
.dropdown-item {
    color: #ffffff;
    background-color: rgba(194, 14, 230, 0.73)
}
.dropdown-item:hover {
    background-color: rgba(211, 52, 243, 0.527)  !important;
    color: #ffffff;
    border-color: #fff;

}
.menu-fijo {
    width: 100% !important
}

.imagen-bg {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover
}

.imagen-principal {
    height: 40rem;
    background-image: url(/static/img/clasesdanzavientreMadrid-Ishtar.webp)
}
@media (max-width: 480px) {
    .imagen-principal {
        height: 35rem;
        background-image: url(/static/img/clasesdanzavientreMadrid-IshtarSM.webp)
    }
}

 
.imagen-talleres {
    height: 35rem;
    background-image: url(/static/img/arquetipos.webp)
}
.imagen-tribal {
    height: 35rem;
    background-image: url(/static/img/danzaTribalFusionContemporaneo.webp)
}
.imagen-empoderamiento {
    height: 35rem;
    background-image: url(/static/img/empoderamiento.webp);
    border-radius: .5rem
}
.imagen-clasesdanzadelvientre {
    height: 35rem;
    background-image: url(/static/img/clasesdanzadelvientre1.webp);
    border-radius: .5rem
}


.imagen-horarios {
    border-radius: 0.5rem;
    -webkit-box-shadow: 7px 8px 41px -8px rgba(194, 14, 230, 0.73);
    box-shadow: 7px 8px 41px -8px rgba(194, 14, 230, 0.73)
}

p {
    font-size: 1.2rem
}

div.mapa {
    height: 500px
}
#footer .nav-footer a,
#footer a p {
    color: #ffffff;
    margin-right: .8rem;
    margin-left: .8rem;
 
    text-align: center
}
#footer a {
    color: #ffffff;
    margin-right: .8rem;
    margin-left: .8rem
}
#footer a:hover {
    color: #fdb94b !important
}
/* .ie11 .navbar-dark.navbar-nav.nav-link::after {
    display: block
} */

@media (min-width: 768px) {
    .navbar-dark .navbar-nav .nav-link {
        padding: .7rem .8rem;
        border-radius: 1.5rem
    }
    /* .navbar-dark .navbar-nav .nav-link:after {
        content: ""
    } */
}
.politicas {
    text-align: center !important
}
.redes-sociales li a i {
    color: rgba(194, 14, 230, 0.73);
    padding: 1rem 1rem;
    font-size: 1.7rem;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}
@media (max-width: 992px) {
    .redes-sociales li a i {
        padding: 1.5rem 1.5rem;
        font-size: 2.5rem
    }
}
.redes-sociales li a i:hover {
    opacity: 1;
    -webkit-transform: scale(1.3) rotate(360deg);
    transform: scale(1.3) rotate(360deg)
}
.grid-item {
    width: 400px
}
.grid-item--width2 {
    width: 450px
}
.grid-item--width3 {
    width: 500px
}
@media (max-width: 992px) {
    .table__table-sm {
        font-size: 16px;
       font-weight: bold;
    }
}
.container-wavebottom {
    height: 280px;
    position: relative;
    border-color: transparent;
    /* background: #c20ee6; */
    /* background: linear-gradient(145deg, rgba(194, 14, 230, 0.729195902) 0%, rgba(194, 14, 230, 0.6983835771) 100%) */
    background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%);
}
.wavebottom {
    position: absolute;
    bottom: 0;
    left: 0;
    overflow: hidden;
    height: 150px;
    width: 100%
}
.bg-registro {
    background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%) !important;
}


@media (max-width: 768px) {
    .font-small {
        font-size: 10px;
         
    }
}



.border-success {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
  }

 .imagen-contenido-1{
        height: 70rem;
        background-image: url(/static/img/festival24/festival_danza_del_vientre_2024-17.webp);
        position: relative;
    }
    @media (max-width: 576px) {
        .imagen-contenido-1 {
            height: 105rem;
            background-image: url(/static/img/festival24/festival_danza_del_vientre_2024-17.webp)
        }
    }

    .imagen-contenido-principiantes{
        height: 50rem;
        background-image: url(/static/img/festival24/festival_danza_del_vientre_2024-17.webp);
        position: relative;
    }
    @media (max-width: 576px) {
        .imagen-principiantes{
            height:70rem;
            background-image: url(/static/img/festival24/festival_danza_del_vientre_2024-17.webp)
        }
    }
.texto-contenido-1{
    position:absolute;
    top: 5rem;
    left: 2rem;
}
@media (max-width: 576px) {
    .texto-contenido-1 {
        top: 2rem;
        left: 0rem;
    }
}
.imagen-contenido-2{
    height: 50rem;
    background-image: url(/static/img/festival24/clases-danza-oriental-madrid-1.webp);
    position: relative;
}
/* @media (max-width: 576px) {
    .imagen-contenido-2 {
        height: 60rem;
        background-image: url(/static/img/festival24/clases-danza-oriental-madrid-1.webp)
    }
} */
.texto-contenido-2{
    position:absolute;
    top: 2rem;
    right:  1.5rem;
 
}
 /* @media (max-width: 576px) {
    .texto-contenido-2 {
        top: 4rem;
        left: 0rem;
    }
}  */

.imagen-contenido-3{
    height: auto;
    background-image: url(/static/img/clases-escuela-danza-oriental-ishtar.webp);
    position: relative;
}
@media (max-width: 576px) {
    .imagen-contenido-3 {
        height: 66rem;
        background-image: url(/static/img/clases-escuela-danza-oriental-ishtar.webp);
        position: relative;
    }
}
.texto-contenido-3{
    position:absolute;
    top: 2rem;
    right:  5rem;
    
}
@media (max-width: 576px) {
    .texto-contenido-3 {
        top: 2rem;
        left: 0rem;
    }
}
@media (max-width:992px) {
    .texto-contenido-3 {
        top: 2rem;
        left: 1rem;
    }
}
.imagen-contenido-4{
    height: 50rem;
    background-image: url(/static/img/clases-escuela-danza-oriental-ishtar-madrid.webp);
    position: relative;
}
@media (max-width: 576px) {
    .imagen-contenido-4 {
        
        background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%) !important;
        height: 69rem;
    }
}
.texto-contenido-4{
    position:absolute;
    top: 3rem;
    left:  3rem;
    right: 3rem;
}
@media (max-width: 576px) {
    .texto-contenido-4 {
        top: 2rem;
        left: 0.2rem;
    }
}


.imagen-contenido-5{
    height: 40rem;
    background-image: url(/static/img/festival24/clases-danza-oriental-madrid-1.webp);
    position: relative;
}
@media (max-width: 576px) {
    .imagen-contenido-5 {
        height: 68rem;

        background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%) !important;
    }
}

.texto-contenido-5{
    position:absolute;
    top: 2rem;
    left:  6rem;
}
@media (max-width: 576px) {
    .texto-contenido-5 {
        top: 4rem;
        left: 0rem;
    }
}
@media (max-width:992px) {
    .texto-contenido-5 {
        top: 2rem;
        left: 1rem;
    }
}
 


.imagen-contenido-6{
    height:auto;
    background-image: url(/static/img/termino-danza-del-vientre.webp);
    position: relative;
}
@media (max-width: 576px) {
    .imagen-contenido-6 {
        height: 135rem;
        background-image: url(/static/img/termino-danza-del-vientre.webp);
        position: relative;
    }
}
@media (max-width: 1200px) {
    .imagen-contenido-6 {
        height: 60rem;
        background-image: url(/static/img/termino-danza-del-vientre.webp);
        position: relative;
    }
}


.texto-contenido-6{
    position:absolute;
    top: 2rem;
    right:  5rem;
    
}
@media (max-width: 576px) {
    .texto-contenido-6 {
        top: 2rem;
        left: 0rem;
    }
}
@media (max-width:992px) {
    .texto-contenido-6 {
        top: 2rem;
        left: 1rem;
    }
}


.login-card {
    border-radius: 20px !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.login-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 35px rgba(125, 75, 148, 0.15) !important;
}

.bg-purple {
    background-color: #7d4b94 !important;
}

.btn-ishtar {
    background-color: #7d4b94;
    color: white;
    border: none;
    transition: 0.3s;
}

.btn-ishtar:hover {
    background-color: #663d7a;
    color: white;
}

/* Fix para que el banner no "asfixie" la web en el móvil */
@media (max-width: 576px) {
    #ishtar-cookies {
        padding: 12px !important;
    }
    #ishtar-cookies p {
        font-size: 0.75rem !important;
        margin-bottom: 10px !important;
    }
    /* Ponemos los botones uno al lado del otro si son pequeños */
    #ishtar-cookies .d-grid {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center;
        gap: 8px !important;
    }
}

/* --- OPTIMIZACIÓN MÓVIL PARA EL BANNER DE COOKIES --- */
@media (max-width: 576px) {
    /* Reducimos el espacio interno del banner */
    #ishtar-cookies {
        padding: 12px 15px !important; 
    }
    
    /* Hacemos el título más pequeño */
    #ishtar-cookies h6 {
        font-size: 0.85rem !important; 
        margin-bottom: 5px !important;
    }
    
    /* Reducimos el tamaño del texto legal */
    #ishtar-cookies p {
        font-size: 0.75rem !important; 
        line-height: 1.2 !important;
        margin-bottom: 12px !important;
    }
    
    /* Alineamos los botones en una sola fila para ahorrar espacio vertical */
    #ishtar-cookies .d-grid {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        gap: 10px !important;
    }

    /* Ajustamos el tamaño de los botones */
    #ishtar-cookies .btn {
        padding: 6px 15px !important;
        font-size: 0.75rem !important;
        flex: 1; /* Hace que ambos botones midan lo mismo */
        max-width: 150px;
    }
}
/* Efecto de brillo Ishtar para campos de texto */
.form-control:focus {
    border-color: #7d4b94 !important; /* El color de tu marca */
    box-shadow: 0 0 12px rgba(125, 75, 148, 0.4) !important; /* Brillo difuminado */
    outline: 0 none;
}

/* Estilo para que el botón de "VER" combine perfectamente */
#togglePassword:focus {
    box-shadow: none !important;
    border-color: #7d4b94 !important;
}
 
/* Estilos para el Tablón de Anuncios */
.announcement-board {
    border: 1px solid #e5c7e7;
    border-radius: 12px;
    overflow: hidden;
    background-color: #ffffff;
}

.announcement-header {
    background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%); /* Tu degradado corporativo */
    color: white;
    padding: 10px;
}

.announcement-body {
    padding: 15px;
    background-color: #fdfbff;
}

.bg-purple-light {
    background-color: #f3ebf7;
}

.text-purple {
    color: #7d4b94 !important;
}

.announcement-body li {
    border-bottom: 1px dashed #e5c7e7;
    padding-bottom: 8px;
}

.announcement-body li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}


/* --- DISEÑO DE TARJETAS DE PRECIOS --- */
.precio-card {
    border: 2px solid #f3ebf7;
    border-radius: 20px;
    transition: all 0.3s ease;
    background: white;
}
.precio-card:hover {
    transform: translateY(-10px);
    border-color: #7d4b94;
    box-shadow: 0 15px 30px rgba(125, 75, 148, 0.15);
}
.precio-header {
    background: linear-gradient(to right, #e3b4ea 0%, #6715a2 100%);
    color: white;
    border-radius: 18px 18px 0 0;
    padding: 20px;
}
.precio-monto {
    font-size: 2.5rem;
    font-weight: bold;
    color: #7d4b94;
}

/* --- DISEÑO DE TABLA DE HORARIOS --- */
.tabla-horarios-container {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
}
.tabla-ishtar {
    margin-bottom: 0;
}
.tabla-ishtar thead {
    background-color: #7d4b94;
    color: white;
    text-transform: uppercase;
}
.tabla-ishtar th, .tabla-ishtar td {
    padding: 15px !important;
    vertical-align: middle;
}
.nivel-destacado {
    background-color: #fcf8ff;
    font-weight: bold;
    color: #7d4b94;
}


/* --- DISEÑO DE HORARIOS MODERNOS --- */
.horario-section {
    background: #fdfbff;
    border-radius: 30px;
    padding: 30px;
    border: 1px solid #e5c7e7;
}

/* Rejilla de Clases Semanales */
.class-slot {
    background: white;
    border-left: 4px solid #7d4b94;
    border-radius: 10px;
    margin-bottom: 12px;
    padding: 15px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px rgba(125, 75, 148, 0.05);
}

.class-slot:hover {
    transform: scale(1.02);
    box-shadow: 0 8px 15px rgba(125, 75, 148, 0.1);
}

.time-tag {
    font-size: 0.8rem;
    color: #6715a2;
    font-weight: bold;
    display: block;
    margin-bottom: 5px;
}

/* Tarjetas de Talleres (Sábados) */
.workshop-card-modern {
    background: white;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #e5c7e7;
    height: 100%;
}

.workshop-date-ribbon {
    background: linear-gradient(135deg, #e3b4ea 0%, #7d4b94 100%);
    color: white;
    padding: 10px;
    text-align: center;
    font-weight: bold;
}

.badge-nivel {
    background: #f3ebf7;
    color: #7d4b94;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: bold;
}

/* Sección Testimonios Ishtar */
#testimonios {
    background-color: #fdfbff; /* Un tono muy suave para diferenciar la sección */
    padding: 80px 0;
}

.testimonial-card {
    background: white;
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(125, 42, 232, 0.05); /* Sombra lila muy suave */
    border: 1px solid rgba(125, 42, 232, 0.1);
    transition: transform 0.3s ease;
    height: 100%;
}

.testimonial-card:hover {
    transform: translateY(-10px);
}

.quote-icon {
    font-size: 40px;
    color: #7d2ae8; /* Color Ishtar */
    opacity: 0.3;
    line-height: 1;
}

.stars-rating {
    color: #ffc107; /* Dorado para las estrellas */
    font-size: 18px;
    margin-bottom: 15px;
}

.testimonial-text {
    font-style: italic;
    color: #444;
    line-height: 1.6;
    margin-bottom: 20px;
}

.testimonial-author {
    font-family: 'Caudex', serif;
    font-weight: bold;
    color: #7d2ae8;
}

.testimonial-info {
    font-size: 0.85rem;
    color: #888;
}

/* --- SEGURIDAD ANTI-SPAM (Honeypot) --- */
.ishtar-seguridad {
    display: none !important;
    visibility: hidden !important;
}

/* Badge de Resumen de Google */
.google-badge {
    background: #fff;
    border-radius: 15px;
    border: 1px solid #eee;
    transition: all 0.3s ease;
}

/* Estilo para los Avatares con iniciales */
.avatar-ishtar {
    width: 45px;
    height: 45px;
    background: linear-gradient(135deg, #7d2ae8, #a267f5);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-family: 'Caudex', serif;
    font-size: 1.2rem;
    box-shadow: 0 4px 8px rgba(125, 42, 232, 0.2);
}

/* Animación sutil de entrada para las tarjetas */
.testimonial-card {
    border-left: 4px solid #7d2ae8 !important; /* Acento de color lateral */
}
/* --- SECCIÓN MAESTRA (AUTORIDAD) --- */
#maestra {
    background-color: #fdfbff; /* Un lavanda casi blanco para diferenciar la sección */
    border-top: 1px solid rgba(125, 42, 232, 0.1);
    border-bottom: 1px solid rgba(125, 42, 232, 0.1);
}

.border-purple-light {
    border: 8px solid white;
    box-shadow: 0 15px 35px rgba(125, 42, 232, 0.15) !important;
}

.text-purple-deep {
    color: #4b1b8d; /* Un púrpura más oscuro para legibilidad y elegancia */
    font-family: 'Caudex', serif;
}

.link-ishtar {
    color: #7d2ae8;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
}

.link-ishtar:hover {
    color: #4b1b8d;
    border-bottom: 2px solid #7d2ae8;
}

/*# sourceMappingURL=estilos.css.map */