/*******************************************************************************
 * Noches en los jardines del Real Alcázar 2026
 * Temas, colores, tipografías y componentes específicos
 * Carga antes que njra-layout.css
 ******************************************************************************/

/*---------------------------------------------------- CSS VARIABLES --------------------------------------------------*/
:root,
:root[data-force-color-mode="light"],
:root[data-force-color-mode="dark"] {
    --main-color: rgb(244, 244, 244);
    --main-bg-color: rgba(0, 0, 0, 0.96);
    --header-background: rgba(0, 0, 0, 0.96);
    --home-header-background: var(--main-bg-color);
    --main-link-color: rgb(238,123,76);
    --main-link-color: rgb(255,184,152);
    --main-link-color: rgb(238,123,76);
    --main-title-color: rgba(112, 202, 240, 1);
    --calendar-lines-color: rgba(125, 139, 134, 0.7);
    --calendar-day-color: rgba(255, 255, 255, 0.76);
    --calendar-bg-color: rgba(0, 0, 0, 0.8);
    --home-item-bkg-color: rgba(0, 0, 0, 0);
    --musicaAntigua-color: rgb(91, 87, 161);
    --musicaClasica-color: rgb(0, 168, 219);
    --musicaOtrasMusicas-color: rgb(1, 167, 103);
    --musicaFlamenco-color: rgb(255, 0, 0);
    --musicaDelMundo-color: rgb(150, 101, 67);
    --musicasEuropeas-color: rgb(240, 91, 171);
    --home-color: #F4F4F4;
    --main-ig-tomato: rgba(0, 0, 0, 1);
    --home-bg-color: var(--main-ig-tomato);
    --mensaje-institucional-bg-color: rgba(0, 0, 0, 1);
    --jardines-color: rgba(244, 244, 244, 1);
    --jardines-bg: rgba(0, 0, 0, 1);
    --venta-online-bg-color: var(--main-link-color);
    --venta-online-color: rgba(41, 42, 43, 1);
    --formLabel-color: var(--main-color);
    --formField-color: rgba(0, 0, 0, 0);
    --toc-hover-color: var(--main-link-color);
    --mainMenu-border-color: rgba(222, 222, 222, 0.8);
    --mainMenu-submenu-border-color: rgba(222, 222, 222, 0.4);
    --mainMenu-submenu-bg-color: var(--main-bg-color);
    --mainMenu-a-has-sub-menu: var(--main-bg-color);
    --mainMenu-a-has-sub-menu-url-png: url(https://actidea.es/nochesalcazar2025/images/ui/down-arrow-light-grey.png);
}

/*---------------------------------------------------- COLORES MÚSICA GRUPOS ------------------------------------------*/
.musicaAntigua > p > a,
article a.musicaAntigua,
a.musicaAntigua,
span.musicaAntigua,
h1.musicaAntigua,
h2.musicaAntigua,
article.música-antigua a,
article.música-antigua h1,
article.música-antigua h2,
.mainMenu a.musicaAntigua,
article.musicaAntigua h1,
article.musicaAntigua a,
article.musicaAntigua .musicos,
ul.musicaAntigua > li > a {
    color: var(--musicaAntigua-color) !important;
}

.musicaClasica > p > a,
article a.musicaClasica,
a.musicaClasica,
span.musicaClasica,
h1.musicaClasica,
h2.musicaClasica,
article.música-clásica a,
article.música-clásica h1,
article.música-clásica h2,
.mainMenu a.musicaClasica,
article.musicaClasica h1,
article.musicaClasica a,
article.musicaClasica .musicos,
ul.musicaClasica > li > a {
    color: var(--musicaClasica-color) !important;
}

.otrasMusicas > p > a,
article a.otrasMusicas,
a.otrasMusicas,
span.otrasMusicas,
h1.otrasMusicas,
h2.otrasMusicas,
article.otras-músicas a,
article.otras-músicas h1,
article.otras-músicas h2,
.mainMenu a.otrasMusicas,
article.otrasMusicas h1,
article.otrasMusicas a,
article.otrasMusicas .musicos,
ul.otrasMusicas > li > a {
    color: var(--musicaOtrasMusicas-color) !important;
}

.musicaFlamenco > p > a,
article a.musicaFlamenco,
a.musicaFlamenco,
span.musicaFlamenco,
h1.musicaFlamenco,
h2.musicaFlamenco,
article.musicaFlamenco a,
article.musicaFlamenco h1,
.mainMenu a.musicaFlamenco,
article.musicaFlamenco h1,
article.musicaFlamenco .musicos,
ul.musicaFlamenco > li > a {
    color: var(--musicaFlamenco-color) !important;
}

.musicasDelMundo > p > a,
article a.musicasDelMundo,
a.musicasDelMundo,
span.musicasDelMundo,
h1.musicasDelMundo,
h2.musicasDelMundo,
article.músicas-del-mundo a,
article.músicas-del-mundo h1,
article.músicas-del-mundo h2,
.mainMenu a.musicasDelMundo,
article.musicasDelMundo h1,
article.musicasDelMundo .musicos,
ul.musicasDelMundo > li > a {
    color: var(--musicaDelMundo-color) !important;
}

.musicasEuropeas > p > a,
article a.musicasEuropeas,
a.musicasEuropeas,
span.musicasEuropeas,
h1.musicasEuropeas,
h2.musicasEuropeas,
article.músicas-europeas a,
article.músicas-europeas h1,
article.músicas-europeas h2,
.mainMenu a.musicasEuropeas,
article.musicasEuropeas h1,
article.musicasEuropeas .musicos,
ul.musicasEuropeas > li > a {
    color: var(--musicasEuropeas-color) !important;
}

/*---------------------------------------------------- FONTS ---------------------------------------------------------*/
@font-face {
    font-family: 'ColaborateLightRegular';
    src: local('☺'),
        url('https://www.actidea.es/common/tipos/njra/ColabLig-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Colaborate-ThinRegular';
    src: local('☺'),
        url('https://www.actidea.es/common/tipos/njra/ColabThi-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'NoMovement';
    src: url('https://www.actidea.es/common/tipos/njra/n.o.-_movement_bold.woff2') format('woff2'),
        url('https://www.actidea.es/common/tipos/njra/n.o.-_movement_bold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/*---------------------------------------------------- TYPOGRAPHY ----------------------------------------------------*/
html,
body {
    font-family: "ColaborateLightRegular", Helvetica, sans-serif;
    font-size: 1em;
    line-height: 1.5em;
    color: var(--main-color);
}

p {
    text-align: justify;
    color: var(--main-color);
    margin: 0;
    padding: 0 0 0 0;
}

a {
    text-decoration: none;
    color: var(--main-link-color);
}

.mainMenu a{
  font-weight:600;
}

a:hover {
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5 {
    color: var(--main-color);
    font-family: "ColaborateLightRegular", Helvetica, Verdana, sans-serif !important;
    text-decoration: none;
    font-weight: normal;
}

h1 {
    font-size: 29px;
    line-height: 28px;
    margin: 6px 0 24px 0;
}

h2 {
    font-size: 16px;
    line-height: 16px;
    margin: 18px 0 6px 0;
    text-shadow: 1px 0 0 rgba(120, 120, 120, 0.2);
}

h3 {
    font-size: 15px;
    line-height: 15px;
    margin: 6px 0 3px 0;
}

h5 {
    font-size: 15px;
    line-height: 15px;
    margin: 6px 0 3px 0;
}

body.uriDepth-2.grupos :is(h2, h3, h4, h5, h6) {
    font-size: 1.3em;
}

::selection {
    background: #CC0000;
}

::-moz-selection {
    background: #CC6600;
}

/*---------------------------------------------------- UTILS ---------------------------------------------------------*/
img {
    max-width: 100%;
    height: auto;
}

p.positive_feedback {
    background: rgba(22, 144, 22, 0.1);
    border: rgba(44, 155, 44, 0.3) 1px solid;
    padding: 12px;
}

img.v_align_middle {
    vertical-align: middle;
}

.marginleft12 {
    margin-left: 12px;
}

span.align_right {
    display: block;
    text-align: right;
}

div > p.textoverimage {
    text-align: left;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    padding: 8px;
    margin: 8px;
    z-index: 2000;
}

/* triángulos */
.arrow-up {
    width: 32px;
    height: 20px;
    background-color: #8888e8;
    clip-path: polygon(50% 0, 0 100%, 100% 100%);
}

.arrow-right {
    width: 20px;
    height: 32px;
    background-color: #e888a3;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
}

.arrow-down {
    width: 32px;
    height: 20px;
    background-color: #f7df6c;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
}

.arrow-left {
    width: 20px;
    height: 32px;
    background-color: #8de698;
    clip-path: polygon(100% 100%, 100% 0, 0 50%);
}

/* alineaciones de imagen */
img.img_alin_izq,
.align_L {
    float: left;
    margin: 0 12px 0 0;
}

img.img_alin_dcha,
.align_R {
    float: right;
    margin: 0 0 0 12px;
}

img.img_alin_cntr,
.align_C {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

img.img_margen_10 {
    margin: 10px;
}

img.img_margen_8 {
    margin: 8px;
}

.mayusculas {
    text-transform: uppercase !important;
}

.minusculas {
    text-transform: lowercase !important;
}

.capitalizar {
    text-transform: capitalize !important;
}

p.p_alinear_dcha {
    text-align: right !important;
}

p.p_alinear_izq {
    text-align: left !important;
}

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

p.p_justificar {
    text-align: justify !important;
}

.flotar_dcha {
    float: right;
}

.flotar_izq {
    float: left;
}

div.div_alin_izq {
    position: relative;
    display: inline;
    float: left;
    margin: 0 8px 8px 0;
}

div.div_alin_dcha {
    position: relative;
    display: inline;
    float: right;
    margin: 0 0 8px 0;
}

div.div_alin_cntr {
    position: relative;
    display: inline;
    margin-left: auto;
    margin-right: auto;
}

p.p_interlineado_20 {
    line-height: 20px !important;
}

p.p_interlineado_16 {
    line-height: 16px !important;
}

p.p_interlineado_24 {
    line-height: 24px !important;
}

.nodisplay,
.oculto {
    display: none;
}

.fontsize-8 {
    font-size: 8px;
    color: #7D8B86;
}

div.div_columna_izqda {
    width: 344px;
    display: block !important;
    float: left !important;
    clear: left;
    padding: 0 18px 0 0;
}

div.div_columna_dcha {
    float: left;
    display: block !important;
    clear: right;
    padding: 0 0 0 18px;
}

p.p_columna_izqda {
    width: 344px;
    display: block !important;
    float: left !important;
    clear: left;
    padding: 0 18px 0 0;
}

p.p_columna_dcha {
    width: 344px;
    display: block !important;
    float: right !important;
    clear: right;
    padding: 0 0 0 18px;
}

p.p_cal_columna_izqda {
    width: 204px;
    display: block !important;
    float: left !important;
    clear: left;
    padding: 0 18px 0 0;
}

p.p_cal_columna_dcha {
    width: 464px;
    display: block !important;
    float: right !important;
    clear: right;
    padding: 0 0 0 18px;
}

p.p_col_3 {
    width: 230px;
    display: block !important;
    float: left !important;
    padding: 6px 10px 6px 0;
    text-align: left;
}

p.p_col_4 {
    width: 170px;
    display: block !important;
    float: left !important;
    padding: 6px 10px 6px 0;
    text-align: left;
}

p.p_col_5 {
    width: 140px;
    display: block !important;
    float: left !important;
    padding: 6px 8px 6px 0;
    text-align: left;
}

p.p_col_6 {
    width: 120px;
    display: block !important;
    float: left !important;
    padding: 6px 3px 6px 0;
    text-align: left;
}

.span_entreletras_normal {
    letter-spacing: normal;
}

.span_entreletras_1em {
    letter-spacing: 1em;
}

.span_entreletras__25px {
    letter-spacing: 0.25px;
}

.span_entreletras__50px {
    letter-spacing: 0.5px;
}

.span_entreletras__75px {
    letter-spacing: 0.75px;
}

.span_entreletras_1px {
    letter-spacing: 1px;
}

.span_entreletras_2px {
    letter-spacing: 2px;
}

.span_entreletras_3px {
    letter-spacing: 3px;
}

.span_entreletras_4px {
    letter-spacing: 4px;
}

.span_entreletras_-1px {
    letter-spacing: -1px;
}

.span_entreletras_-2px {
    letter-spacing: -2px;
}

.span_entreletras_-3px {
    letter-spacing: -3px;
}

.span_entreletras_-4px {
    letter-spacing: -4px;
}

.span_entrepalabras_1px {
    word-spacing: 1px;
}

.span_entrepalabras_2px {
    word-spacing: 2px;
}

.span_entrepalabras_3px {
    word-spacing: 3px;
}

.span_entrepalabras_4px {
    word-spacing: 4px;
}

.span_entrepalabras_-1px {
    word-spacing: -1px;
}

.span_entrepalabras_-2px {
    word-spacing: -2px;
}

.span_entrepalabras_-3px {
    word-spacing: -3px;
}

.span_entrepalabras_-4px {
    word-spacing: -4px;
}

/*---------------------------------------------------- EXTERNAL LINKS ------------------------------------------------*/
.enlace_externo a:hover {
    color: orangered !important;
}

.enlace_externo a {
    color: orangered !important;
}

/*---------------------------------------------------- LISTS ---------------------------------------------------------*/
ol,
ul,
dl {
    list-style-type: none;
    padding: 0;
}

/*---------------------------------------------------- GRUPOS --------------------------------------------------------*/
article.grupos p {
    text-align: left;
}

.musicos {
    font-weight: 700;
}

.instrument {
    color: #7D8B86;
    padding: 0 6px;
    font-family: Helvetica, Verdana, Trebuchet, sans-serif;
    font-size: 11px;
}

.negrita {
    color: #EC4501;
}

.naranja {
    color: #E07101;
}

article.grupos.uriDepth-1 ul {
    display: grid;
    gap: 1em;
    grid-template-columns: repeat(auto-fit, minmax(10em, 25em));
}

/*---------------------------------------------------- PROGRAMACIÓN --------------------------------------------------*/
body.programación article h2 {
    margin: 2px 0 18px 0;
    font-size: 18px;
    font-weight: 600;
}

.subtituloProgramacion {
    display: inline-block;
    padding-left: 6px;
    font-size: 14px;
    font-family: "Colaborate-ThinRegular", "League Gothic Regular", Helvetica, Verdana, sans-serif !important;
}

article.programación a {
    text-transform: uppercase;
}

article.programación ul > li {
    line-height: 1.1em;
    margin-bottom: 14px;
}

body.programación date {
    display: block;
    margin-left: 10px;
}

.programa-y-ciclo {
    font-size: inherit;
}

/*---------------------------------------------------- CÓMO LLEGAR ---------------------------------------------------*/
article.cómo-lllegar iframe {
    max-width: 100%;
}

/*---------------------------------------------------- VENTA DE ENTRADAS ---------------------------------------------*/
a.venta-online {
    background-color: var(--venta-online-bg-color);
    color: var(--venta-online-color);
    display: inline-block;
    padding: 2px 8px;
    border-radius: 3px;
    font-weight: 800;
}

/*---------------------------------------------------- CONTACTO ------------------------------------------------------*/
.contact-ok {
    color: #50a025;
    font-size: 300px;
}

/*---------------------------------------------------- CALENDARIO ----------------------------------------------------*/
.eventlessWeek,
.eventLessWeek,
.day,
.group {
    display: none;
}

body.calendario .date_wo_event {
    display: none;
}

table.calendario {
    display: table;
    table-layout: fixed;
    width: 100%;
}

concert {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
}

concert.event a {
    line-height: 1.2;
    flex-grow: 1;
    text-align: center;
}

concert .day {
    margin-left: auto;
    display: block;
    background: transparent;
    color: var(--calendar-day-color);
    white-space: nowrap;
}

.calendario tr {
    width: 100%;
}

.calendario td {
    border: none;
    display: none;
}

.calendario td.eventFullDay {
    display: block;
    width: 100%;
    clear: both;
    border-bottom: 1px dotted rgba(0, 0, 0, 0.1);
}

.calendario td.eventFullDay a:hover {
    font-weight: 400;
}

.event > .day:before {
    color: var(--calendar-day-color);
    display: inline-block;
    width: 18px;
    text-align: center;
}

td.Lunes .day:before {
    content: 'L';
}

td.Martes .day:before {
    content: 'M';
}

td.Miércoles .day:before {
    content: 'X';
}

td.Jueves .day:before {
    content: 'J';
}

td.Viernes .day:before {
    content: 'V';
}

td.Sábado .day:before {
    content: 'S';
}

td.Domingo .day:before {
    content: 'D';
}

td.domingo,
td.Domingo {
    display: none;
}

.today {
    font-weight: 800;
    color: rgba(95, 156, 147, 1);
}

.calendario #toc h2.calendarName {
    font-weight: bold;
    color: var(--main-color) !important;
}

br.break {
    display: none;
}

.date_has_event > .day {
    color: var(--calendar-day-color);
}

concert {
    text-align: center;
}

@media screen and (min-width: 769px) {
    br.break {
        display: block;
    }

    span.breakspace {
        display: none;
    }

    .calendarName {
        font-family: "Colaborate-ThinRegular", "League Gothic Regular", Helvetica, Verdana, sans-serif !important;
        text-decoration: none;
        margin-top: 26px;
        font-size: 26px;
        line-height: 20px;
    }

    .calendario td.week_day {
        height: 36px;
        color: #7D8B86;
        font-size: 16px;
        border: none;
        text-align: left;
        text-transform: capitalize;
    }

    .calendario td {
        border: none;
        display: table-cell;
        width: 16%;
        margin: 0;
        overflow: hidden;
        height: 104px;
    }

    .calendario td.eventFullDay {
        display: table-cell;
        clear: none;
        border: 1px solid var(--calendar-lines-color);
    }

    .calendario td.Domingo {
        display: none;
    }

    concert.event {
        background: transparent;
    }

    concert.event a {
        width: 100%;
        font-size: 16px;
        line-height: 1.2;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    concert {
        text-align: center;
    }

    concert .day {
        display: none;
    }

    .date_has_event {
        position: relative;
        height: 100%;
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .date_has_event > .day {
        display: block;
        position: absolute;
        top: 0;
        right: 4px;
    }

    td > div.date_has_event > .day:before {
        content: '';
    }

    .NoEventText {
        color: rgba(0, 0, 0, 0.5) !important;
        text-align: center;
    }

    td.Domingo .NoEventText {
        display: none;
    }
}

body.calendario article {
    margin-bottom: 1440px;
}

concert.tonightsConcert {
    width: 232px;
    height: 232px;
}

tonight {
    color: rgba(255, 255, 255, 1);
    font-family: "ColaborateLightRegular", Helvetica, sans-serif;
    font-weight: 400;
    padding: 4px 4px;
}

.tonightsConcert > picture {
    max-width: 388px;
    max-height: 164px;
}

.tonightsConcert > picture img {
    height: 164px;
    width: auto;
}

.tonightsConcert > picture > a {
    display: flex;
}

.tonightsConcert date {
    color: rgba(255, 255, 255, 0.78);
    position: absolute;
    top: 4px;
    right: 4px;
}

.neonShadow {
    text-shadow: 0 0 10px #fff,
        0 0 30px #58ade0,
        0 0 50px #58ade0,
        0 0 70px #fff,
        0 0 90px #fff;
}

/*---------------------------------------------------- HOME ----------------------------------------------------------*/
article.home {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: flex-start;
    align-content: flex-start;
}

article.home .mensaje-institucional {
    margin-top: 28px;
}

.flex-item {
    margin: 6px 0;
    max-width: 388px;
}

@media screen and (min-width: 525px) {
    article.home {
        display: flex;
        flex-flow: row wrap;
        align-items: flex-start;
        justify-content: space-around;
        align-content: space-around;
    }

    article.home .flex-item-100 {
        flex: none;
        max-width: 100%;
        width: 100%;
        height: auto;
    }
}

article.home .flex-item > div,
concert.tonightsConcert > div {
    flex: none;
    width: 232px;
    height: auto;
    display: grid;
    align-items: center;
    justify-content: center;
}

article.home .flex-item,
concert.tonightsConcert {
    flex: none;
    width: 232px;
    height: 132px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
}

article.home .flex-item.item-2,
article.home .flex-item.item-3,
article.home .flex-item.item-4 {
    margin-left: 6px;
    margin-right: 6px;
}

.flex-item.item-2 > div,
.flex-item.item-3 > div,
.flex-item.item-4 > div {
    background: var(--home-item-bkg-color);
}

article.home > .mensaje-institucional,
article.home > .flex-item-100 {
    background: var(--mensaje-institucional-bg-color);
}

concert.tonightsConcert {
    background: transparent;
    clip-path: none;
    border-radius: 100%;
}

tonight {
    margin-top: 6px;
}

groupname {
    display: block;
    font-size: 18px;
}

a.esta-noche {
    color: rgba(255, 255, 255, 1) !important;
}

tonight {
    color: rgba(255, 255, 255, 0.8);
}

article.home h1 {
    color: black;
    text-align: center;
    font-family: "NoMovement", sans-serif !important;
    text-decoration: none;
    font-size: 24px;
    line-height: 1;
    margin: 0;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: black;
}

article.home .flex-item a {
    display: grid;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: center;
    padding: 0;
    color: var(--main-ig-tomato);
    font-kerning: normal;
    letter-spacing: 0.2rem;
    font-size: 24px;
    font-family: "NoMovement", sans-serif !important;
    text-decoration: none;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: black;
}

body.home a.homevideolink {
    color: black;
    font-size: 36px;
    font-kerning: normal;
    letter-spacing: 0.2rem;
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: var(--main-link-color);
}

article.home .home-first-container {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: space-around;
    align-content: space-around;
    background-color: var(--home-bg-color);
}

/*
  HEADER TWEAKS for screen widths
--------------------------------------------------------------------------------------------------------*/

@media screen and (min-width: 284px) {
  #njrapatronato {
    width: 114px;
  }
  .site-logo>img {
    width: 134px;
  }
  body.jardines article {
    --jardines-article-marginTop: calc(100vh - 130px);
  }
}
@media screen and (min-width: 320px) {
  #njrapatronato {
    width: 144px;
  }
  .site-logo>img {
    width: 174px;
    height: auto;
  }
  body.jardines article {
    --jardines-article-marginTop: calc(100vh - 156px);
  }
}
@media screen and (min-width: 481px) {
  #njrapatronato {
    width: 184px;
  }
  /*.site-logo>img {
    width: 236px;
  }*/
  body.jardines article {
    --jardines-article-marginTop: calc(100vh - 166px);
  }
}
@media screen and (min-width: 525px) {
  .site-wrapper {
    width: 90%;
  }
}
@media screen and (min-width: 769px) {
  #njrapatronato {
    width: 204px;
  }
  .site-logo>img {
    width: 280px;
  }
  body.jardines article {
    --jardines-article-marginTop: calc(100vh - 176px);
  }

  .site-wrapper {
    width: 86%;
  }
  body.home .align_R {
    float: right;
    margin: 8px 0 6px 18px;
  }
}
@media screen and (min-width: 961px) {
  #toc {
    display: block;
  }
}


@media screen and (min-width: 1181px) {
  footer {
    position: fixed;
    bottom: 0;
    left: 7%;
    right: 7%;
  }
  body.jardines footer {
    position: relative;
    bottom: unset;
    left: unset;
    right: unset;
  }
    article.home h1 {
        color: black;
        text-align: center;
        font-size: 36px;
        -webkit-text-stroke-width: 2px;
        -webkit-text-stroke-color: black;
    }

    article.home .flex-item,
    concert.tonightsConcert {
        height: 232px;
    }
}

/*---------------------------------------------------- FONDOS (html:after) -------------------------------------------*/
html:after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    z-index: -100000;
    background-size: cover;
    background: black url("https://actidea.es/nochesalcazar2026/public/images/bkg/1.jpg") no-repeat center center;
}

html.home:after {
    background: black url("https://actidea.es/nochesalcazar2026/public/images/bkg/1.jpg") no-repeat top center;
    background-size: cover;
}

html.programación:after,
html.calendario:after,
html.grupos:after,
html.venta-de-entradas:after,
html.más-información:after,
html.accesibilidad:after,
html.contacto:after,
html.aviso-legal-y-política-de-privacidad:after {
    background: black url("https://actidea.es/nochesalcazar2026/public/images/bkg/2.jpg") no-repeat center center;
    background-size: cover;
}

html.jardines:after {
    background: black url("https://actidea.es/nochesalcazar2026/public/images/bkg/2.jpg") no-repeat center center;
    background-size: cover;
}

html.galería-de-grutescos:after {
    background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg/7.jpg") no-repeat center center;
    background-size: cover;
}

html.jardín-del-cenador-de-la-alcoba:after {
    background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg/6.jpg") no-repeat bottom center;
    background-size: cover;
}

html.jardín-de-la-cruz:after {
    background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg/11.jpg") no-repeat center center;
    background-size: cover;
}

html.jardín-de-los-poetas:after {
    background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg/5.jpg") no-repeat bottom center;
    background-size: cover;
}

html.jardín-del-marqués-de-vega-inclán:after {
    background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg/2.jpg") no-repeat center 71%;
    background-size: cover;
}

html.jardín-inglés:after {
    background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg/14.jpg") no-repeat 54% center;
    background-size: cover;
}

@media screen and (max-width: 769px) {
    html.jardines:after {
        background: black url("https://www.actidea.es/nochesalcazar2025/images/5.jpg") no-repeat center center;
        background-size: cover;
    }

    html.galería-de-grutescos:after {
        background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg_m//7.jpg") no-repeat center center;
        background-size: cover;
    }

    html.jardín-del-cenador-de-la-alcoba:after {
        background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg_m//6.jpg") no-repeat bottom center;
        background-size: cover;
    }

    html.jardín-de-la-cruz:after {
        background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg_m//11.jpg") no-repeat center center;
        background-size: cover;
    }

    html.jardín-de-los-poetas:after {
        background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg_m//5.jpg") no-repeat bottom center;
        background-size: cover;
    }

    html.jardín-del-marqués-de-vega-inclán:after {
        background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg_m//2.jpg") no-repeat center 71%;
        background-size: cover;
    }

    html.jardín-inglés:after {
        background: black url("https://www.actidea.es/nochesalcazar2025/images/bkg/14.jpg") no-repeat 54% center;
        background-size: cover;
    }
}

/*---------------------------------------------------- CONTACT FORM --------------------------------------------------*/
.actidea.cform label,
.actidea.cform legend {
    color: var(--formLabel-color);
}

.actidea.cform input,
.actidea.cform textarea,
.actidea.cform select {
    color: var(--formLabel-color);
    background-color: var(--formField-color);
    border: 1px solid rgba(255, 255, 255, 0.4);
}

.actidea > .cf-fs1,
.actidea > .cf_hidden,
.actidea.cform fieldset {
    border: 1px solid rgba(255, 255, 255, 0.4);
}

/*---------------------------------------------------- JARDINES (colores y ajustes específicos) ----------------------*/
body.jardines h1 {
    line-height: 1;
}

body.jardines .over {
    display: block;
}

body.jardines article {
    background: var(--jardines-bg);
}

/* diseño vertical de jardines (no estructural) */
araticle.jardines > div.tab > p:first-child {
    padding-top: 200px;
}

article.jardines > div.tab {
    width: 100%;
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}

article.jardines > div.tab > h2 {
    font-size: 18px;
    margin-bottom: 10px;
}

article.jardines > div.tab > div:not(.image) {
    margin-bottom: 15px;
}

article.jardines > div.tab .image img {
    width: 100%;
    height: auto;
    display: block;
}

@media screen and (min-width: 961px) {
    article.jardines #toc {
        margin-top: 0px;
        position: absolute;
        padding: 10px 6px 10px 4px;
    }

    article.jardines > div.tab.selected {
        margin-top: 224px;
    }

    article.jardines > div.tab {
        max-width: 1200px;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 20px;
        min-height: 500px;
        margin-bottom: 64px;
    }

    article.jardines > div.tab > h2 {
        width: calc(50% - 10px);
        margin: 0;
        align-self: flex-start;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        font-size: 24px;
    }

    article.jardines > div.tab > div:not(.image) {
        width: calc(50% - 10px);
        padding: 0;
        margin: 0;
        order: 1;
        margin-top: auto;
        padding-top: 2.5em;
    }

    article.jardines > div.tab > div.image {
        width: calc(50% - 10px);
        order: 2;
        height: 100%;
    }

    article.jardines > div.tab .image img {
        max-height: 600px;
        height: 100%;
        object-fit: contain;
    }
}

@media screen and (min-width: 1760px) {
    article.jardines > div.tab.selected {
        margin-top: 0;
    }
}

/*---------------------------------------------------- HOME 2025 (adicional) -----------------------------------------*/
article.home {
    flex-direction: column;
}

article.home .mensaje-institucional {
    margin-top: 20px;
}

article.home > .image {
    flex: 0 0 auto;
    align-self: flex-start;
}

article.home > .text {
    flex: 1;
}

@media screen and (min-width: 961px) {
    article.home .mensaje-institucional {
        padding-top: 0px;
    }

    article.home {
        display: flex;
        flex-direction: row;
        gap: 20px;
    }
}

#toolbarContainer {
    z-index: 56010;
}

/*---------------------------------------------------- TinyMCE (editor) ----------------------------------------------*/
body.mceContentBody {
    background-color: black !important;
    background-image: none;
    text-align: left;
    height: auto;
    min-height: 1000px;
}

body.mceContentBody .over {
    display: block;
}

body.mceContentBody div {
    border: 1px dotted rgba(0, 199, 12, 0.7);
}

body.mceContentBody :is(h1, h2, h3, h4, h5, h6) {
    color: rgba(255, 255, 255, 0.8);
}

body.mceContentBody a:hover {
    color: #000000;
    background: #00CC00;
}

body.mceContentBody ::selection {
    background: #CC0000;
    color: #000000;
}

body.mceContentBody ::-moz-selection {
    background: #CC0000;
    color: #000000;
}

.mceVisualAid {
    border: 1px dashed #6B6BCD;
}

body.mceContentBody > * {
    border: 1px dotted rgba(0, 185, 0, 1);
    padding: 0.2em;
    margin: 0 0 0.2em 0;
}

body.mceContentBody > * > * {
    border: 1px dotted rgba(120, 113, 255, 1);
    padding: 0.2em;
    margin: 0 0 0.2em 0;
}

body.mceContentBody > * > * > * {
    border: 1px dotted rgba(185, 0, 65, 1);
    padding: 0.2em;
    margin: 0 0 0.2em 0;
}

body.mceContentBody > * > * > * > * {
    border: 1px dotted rgba(0, 185, 185, 1);
    padding: 0.2em;
    margin: 0 0 0.2em 0;
}

body.mceContentBody > * > * > * > * > * {
    border: 1px dotted rgba(185, 185, 0, 1);
    padding: 0.2em;
    margin: 0 0 0.2em 0;
}
