/* HOME PAGE */
.welcome{
    background-image: none;
    background-color: white;
    padding: 2rem 0;
}
.welcome .container{
    position: relative;
}
.welcome .row{
    align-items: center;
}
.welcome img{
    height: 10rem;
    margin-right: 3.5rem;
}
.welcome h1{
    font-size: 2.5rem;
}
.welcome span{
    font-size: 2rem;
    margin-bottom: 0.5rem;
}
.welcome h1,
.welcome span{
    color: var(--dark-blue);
    font-family: "MullerNext-Regular", Helvetica, Arial, sans-serif;
}
.welcome strong{
    font-family: "MullerNext-Bold";
}

/* Home Page - Service Links */
.service-links{
    position: absolute;
    top: 1rem;
    right: 1rem;
}

/* Home Page - Nav */
.welcome-nav{
    background: white;
    padding: 0 0 2rem 0;
    margin: -4rem 0 0 0;
}
.welcome-nav .container{
    border: 0;
}
    .welcome-nav-items{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 1rem;
    }
        .welcome-nav-item{
            padding: 1.5rem;
            width: calc((800px - 6rem) / 3);
            display: flex;
            flex-direction: column;
            text-align: left;
            align-self: center;
            height: 5.5rem;
            justify-content: center;
        }
        .welcome-nav-item *{
            color:white;
        }
            .welcome-nav-item span{
                font-size: 0.8rem;
            }
            .welcome-nav-item h2{
                text-transform: uppercase;
                font-size: 1rem;
                letter-spacing: 0.5px;
                width: 100%;
                font-family: "MullerNextWide-Bold", Helvetica, Arial, sans-serif;
                margin-bottom: 0.5rem;
            }
            .welcome-nav-item a{
                font-size: 0.9rem;
                line-height: 115%;
            }
                .welcome-nav-item a:hover{
                    opacity: 1;
                    color: white;
                }
                .welcome-nav-item a.main{
                    text-transform: uppercase;
                    font-size: 1rem;
                    letter-spacing: 0.5px;
                    width: 100%;
                    font-family: "MullerNextWide-Bold", Helvetica, Arial, sans-serif;
                }
        .welcome-nav-item .subs{
            margin: 0 0 -0.25rem 0;
            flex-direction: row;
            padding: 0;
            flex-wrap: wrap;
            gap: 0rem;
            display: inline-flex;
        }
            .welcome-nav-item .subs li{
                padding: 0;
                margin: 0 0.75rem 0.25rem 0.75rem;
                list-style: none;
                font-size: 0.75rem;
                position: relative;
            }
            .welcome-nav-item .subs li:before{
                width:4px;
                height: 4px;
                border-radius: 4px;
                -moz-border-radius: 4px;
                -webkit-border-radius: 4px;
                background-color:white;
                content:'';
                display: block;
                position: absolute;
                left: -0.75rem;
                top: 6px;
            }

        .welcome-nav-item.tickets{
            background-color: var(--dark-blue);
        }
            .welcome-nav-item.tickets span{
                order: 2;
            }
            .welcome-nav-item.tickets h4{
                order: 1;
            }
        .welcome-nav-item.events{
            background-color: var(--turquoise-deep);
        }
        .welcome-nav-item.kids{
            background-color: var(--vivid-orange-new);
        }
        .welcome-nav-item.kids .subs{
            display: none;
        }
        .welcome-nav-item.info{
            background-color: var(--vivid-blue);
        }
        .welcome-nav-item.teams{
            background-color: var(--vivid-salmon);
        }
        .welcome-nav-item.locations{
            background-color: var(--vivid-purple);
        }
        .welcome-nav-item.jobs{
            background-color: var(--vivid-green-new);
            margin: 0;
        }
        .welcome-nav-item.platforms{
            background-color: var(--pale-blue);
        }
        .welcome-nav-item.operaopen{
            background:var(--dark-blue) url(../img/deco/oo-bg.png);
            background-repeat: no-repeat;
            background-position: center top;
        }
            .welcome-nav-item.operaopen .logo{
                margin: 1.5rem auto 0;
            }
                .welcome-nav-item.operaopen:hover .logo{
                    transform: scale(1.2);
                }

/* Home Page - Banner */
.banner{
    width: 400px;
    justify-content: center;
}
.banner img{
    width: 100%;
}

/* Home Page - Events */
.welcome-events{
    background-color: var(--dark-blue);
}
.welcome-events .section-title{
    color: white;
}
.welcome-events .rich-text{
    margin: 0 auto;
    color: white;
}
.welcome-events .card{
    position: relative;
    padding-bottom: 5rem;
}
    .welcome-events .card-txts{
        gap: 1rem;
    }
    .welcome-events .event .author{
        margin: 0 0 -0.25rem;
        max-width: 20rem;
    }
    .welcome-events .event .title,
    .grid .event.card .title{
        max-width:21.5rem !important;
        text-wrap: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        overflow-wrap: unset !important;
    }
.welcome-events .tag-operaopen span{
    color: white !important;
}
    .welcome-events .card .tags{
        margin: 0;
        width: 100%;
    }
    .welcome-events .card .new-date{
        margin-bottom: -0.5rem;
    }
    .welcome-events .card .date{
        font-size: 3rem;
        color: var(--dark-blue);
        width: fit-content;
        margin-right: 1rem;
    }
    .welcome-events .card .time{
        align-self: center;
        opacity: 0;
        transition: all 100ms ease-in;
        color: var(--pale-blue);
    }
        .welcome-events .card:hover .time,
        .welcome-events .card:hover .location{
            opacity: 1;
        }
.welcome-events .card .location{
    width: 100%;
    opacity: 0;
    transition: all 100ms ease-in;
    color: var(--pale-blue);
}
    .welcome-events .card .location i{
        font-size: 1rem;
    }
.welcome-events .grid .card .card-more{
    position: absolute;
    bottom: 1.5rem;
    left: 2rem;
}

.welcome-events .view-all.card-more a{
    color: white;
    border:1px solid white;
    margin: 0 auto;
    padding: 0.5rem 1rem;
    gap: 0.5rem;
    display: flex;
    width: auto;
}
    .welcome-events .view-all.card-more a:hover{
        background: white;
        color: var(--dark-blue);
        transform: translateX(1rem);
        text-decoration: none;
        margin: 0 auto;
    }

.view-all.card-more a{
    margin: 0 auto;
    border:1px solid var(--dark-blue);
    width: fit-content;
}
.view-all.card-more a:hover{
    background: var(--dark-blue);
    color: white;
    transform: translateX(1rem);
    margin: 0 auto;
}


/* HEADER --------------------------------------------------- */
header{
    background-color: white;
    position: relative;
    z-index: 1000;
}
    header .container{
        padding: 0.5rem 0;
        border: 0;
    }

header nav{
    margin-top: 1.5rem;
    display: flex;
    grid-column-gap: 0.25rem;
    font-family: "MullerNext-Medium", Arial, Helvetica, sans-serif;
}
    .nav-item{
        font-size: 0.8rem;
        line-height: 0.8rem;
        padding: 0.5rem 0.75rem;
        height: 0.75rem;
    }
    .nav-item:hover{
        text-decoration: none;
    }
    .nav-item.active{
        border-radius: 0;
        background: var(--dark-blue);
        color: white;
        border-bottom: 0.5rem var(--dark-blue) solid;
        margin: -0.5rem 0 -0.5rem 0;
        padding-top: 1rem;
    }
        .nav-item.active:hover{
            border-radius: 0 !important;
        }
        .nav-item.small.active{
            padding-top: 1rem;
        }

    .nav-item.small{
        font-size: 0.75rem;
        line-height: 0.75rem;
        padding: 0.5rem 0.75rem;
    }
    .nav-item.small:hover{
        background-color: var(--dark-blue);
        color: white;
        text-decoration: none;
    }
        .nav-item.tickets{
            color: var(--dark-blue);
        }
        .nav-item.tickets:hover,
        .nav-item.tickets.active{
            color: white;
            background-color: var(--dark-blue);
            border-bottom-color: var(--dark-blue);
        }
        .nav-item.operaopen{
            color:var(--dark-purple);
        }
            .nav-item.operaopen:hover,
            .nav-item.operaopen.active{
                background-color:var(--dark-purple);
                color:#fff;
                border-bottom-color: var(--dark-purple);
            }
            .operaopen span{
                color: var(--dark-purple);
            }
            .nav-item.operaopen:hover span,
            .nav-item.operaopen.active span{
                color:white;
            }
            .operaopen i{
                color: var(--light-yellow);
            }
        .nav-item.kids{
            color:var(--vivid-orange-new);
        }
            .nav-item.kids:hover,
            .nav-item.kids.active{
                background-color: var(--vivid-orange-new);
                color: white;
                border-bottom-color: var(--vivid-orange-new);
            }
        .nav-item i{
            margin-right: 0.4rem;
        }
        .nav-item span{
            text-transform: uppercase;
        }

    .head-icons{
        margin: 0rem 1rem -0.5rem 0;
        position: absolute;
    }
        .head-icons a{
            font-size: 0.75rem;
            color:var(--pale-gray);
            margin-left: 1rem;
        }
            .head-icons a:hover{
                color:var(--vivid-blue);
                text-decoration: none;
            }
            .head-icons a.lang-change{
                cursor: pointer;
            }
            .head-icons a.lang-change span{
                margin-left: 0.25rem;
                font-size: 0.75rem;
            }
header .home-link{
    width: 15rem;
    height: 3rem;
}
    header .home-link a{
        width: 15rem;
        height: 3rem;
        display: block;
    }

    header .home-link a .header-logo {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }



/* SUB NAV ------------------------------------- */
.subnav{
    background: var(--dark-blue);
    padding: 0;
}
    .subnav .container{
        padding: 0.5rem 0;
        border: 0;
    }
    .subnav nav{
        grid-column-gap: 0.5rem;
        display: flex;
    }
    .subnav nav .nav-item{
        color:white;
    }
        .subnav nav .nav-item:hover{
            background:white;
            color: var(--dark-blue);
            opacity: 1;
        }
        .subnav nav .active{
            background: white;
            border-radius: 0;
            opacity: 1;
            color:var(--dark-blue);
            border-bottom: 0.5rem white solid;
            margin: -0.5rem 0 -10px 0;
            padding-top: 1rem;
        }
        .kids .subnav nav .active,
        .kids .subnav nav .nav-item:hover{
            color: var(--vivid-orange-new);
        }
        .operaopen .subnav nav .nav-item:hover{
            color: var(--dark-purple);
        }

/* Tickets Header */
.tickets-header{
    background: var(--dark-blue);
    color: white;
}
    .tickets-header .sellers{
        display: flex;
        flex-direction: column;
    }
        .tickets-header .sellers-list{
            align-items: center;
            vertical-align: middle;
        }
            .tickets-header .sellers-list .label{
                text-transform: uppercase;
                color: white;
                margin: 0 1rem 0 0;
                font-size: 0.9rem;
                opacity: 1;
                font-family: 'MullerNext-Medium';
            }
            .tickets-header .sellers-list span{
                opacity: 0.9;
            }
            .tickets-header .sellers-list a{
                margin: 0 1rem 0 0.25rem;
            }
            .tickets-header .sellers-list a:last-of-type{
                margin-right: 0;
            }
            .tickets-header .sellers-list .cashiers{
                color: white;
                letter-spacing: 0.5px;
            }
            .tickets-header .sellers-list .cashiers span{
                opacity: 1;
                font-size: 0.9rem;
            }


/* EVENT SubNav */


/* PAGE HEAD --------------------------------------------------- */

.page-header{
    background: #132F55;

}
.page-header .container{
    border: none;
}

.col.page-title{
    width: 33.33%;
    padding-right: 5rem;
}
    .page-title h1{
        font-family: "MullerNext-Bold";
        font-size: 2rem;
        color:#fff;
        letter-spacing: 0.5px;
        position: relative;
        padding-left: 4rem;
        margin-top: -1rem;
    }
        .page-title h1::before{
            content: url(../img/deco/capitel.svg);
            position: absolute;
            top:-2rem;
            left:0rem;
        }
        .page-header .page-title i{
            padding-right: 1rem;
        }

    .col.page-desc{
    width: 66.66%;
    padding-left: 5rem;
    color: #fff;
}

/* CONTENT ------------------------------------------------ */

.card-more a{
    display: flex;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    width: 6.75rem;
    border: 1px solid var(--dark-blue);
}
.card-more a:hover{
    background: var(--dark-blue);
    color: white;
    text-decoration: none;
}
.list-head{
    padding: 0 0 1rem;
}
.list-title{
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.list-head .label{
    margin-right: 1rem;
}
.list-title span{
    font-weight: lighter;
    margin-left: 0.5rem;
}
section.help .section-title h3{
    color: var(--dark-blue);
}

.label-group{
    margin-bottom: 1.5rem;
    display: flex;
    flex-direction: column;
}
    .label-group .label{
        font-size: 0.8rem;
        line-height: 100%;
        color:var(--pale-blue);
        margin-bottom: 0.5rem;
    }
    .label-group .label-content{
        font-family: "MullerNext-Medium", Arial, Helvetica, sans-serif;
    }

/* WIDGETS */
.widget {
    padding: 0 0 2rem;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}
    .widget-event-details .labels-group{
        width: 200px;
    }
    .widget-event-details .rich-text{
        width: calc(100% - 200px);
        margin: 0 auto;
        align-items: center;
    }

.widget-content{
}

.labels-group{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: -0.5rem;
}
.labels-group .content{
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 0.5rem;
}
.labels-group .content a i{
    margin-right: 0.25rem;
}

.event-dates .container{
    padding-bottom: 0;
    margin-bottom: -2rem;
}

.widget-event-details,
.widget-creatives,
.widget-cast{
padding: 4rem 0 0rem;
}

/* EVENT - Team - Creative */

.widget-creatives .team{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
    text-align: center;
    margin: 0 auto;
    width: 100%;
}
.widget-creatives .team .member{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    width: calc((100% - 7rem)/8);
}
    .widget-creatives .team .member .img{
        margin: 0 0 1rem 0 !important;
        height: 160px;
        width: 120px;
        padding: 0;
        border-radius: 0;
        overflow: hidden;
        transition: all 100ms ease-in;
    }
        .widget-creatives .team .member .img img{
            height: 160px;
            width: 120px;
            border-radius: 0;
            transition: all 100ms ease-in;
        }

.widget-creatives .member .texts{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 0.25rem;
}

/* EVENT - Team - Cast */
.widget-cast .team{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 2rem;
    text-align: center;
    margin: 0 auto 1rem;
    width: 100%;
}
    .widget-cast .team .member{
        text-align: left;
        width: 17rem;
        align-items: center;
        justify-content: center;
    }
        .widget-cast .team .member .img{
            width: 4rem;
            height: 4rem;
            overflow: hidden;
            transition: all 100ms ease-in;
        }
            .widget-cast .team .member .img img{
                width: 4rem;
                height: 4rem;
                overflow: hidden;
                transition: all 100ms ease-in;
            }
    .widget-cast .team.main-members{
        width: 100%;
    }
        .widget-cast .team.main-members .member{
            width: calc((100% - 6rem) / 7);
            position: relative;
            align-content: baseline;
        }
        .widget-cast .team.main-members .member .img{
            margin: 0 auto 0.5rem;
            border-radius: 3.5rem;
            width: 7rem;
            height: 7rem;
        }
        .widget-cast .team.main-members .member .img img{
            width: 7rem;
            height: 7rem !important;
            border-radius: 3.5rem;
        }
    .widget-cast .team.main-members .member .texts{
        text-align: center;
        }
        .widget-cast .team.main-members .member .texts .label-guest{
            margin: 0 auto 0.25rem;
        }

    /* EVENT - Team - Departments */

    .widget-cast .team.departments{
        gap: 2rem;
    }
    .widget-cast .team.departments .member{
        width: calc((100% - 8rem) / 3);
        display: flex;
    }
        .widget-cast .team.departments .member .img{
            border-radius: 0;
            width: auto;
            height: 7rem;
            aspect-ratio: 3 / 2;
            margin: 0;
        }
            .widget-cast .team.departments .member .img img{
                border-radius: 0;
                width: 100%;
                height: auto;
                aspect-ratio: 3 / 2;
                border-radius: 0;
            }
            .widget-cast .team.departments .member:hover .img img{
                opacity: 1;
                filter: none;
                transform: scale(1.1);
            }
        .widget-cast .team.departments .member .texts{
            text-align: left;
            margin: 0 0 0 1rem;
        }
            .widget-cast .team.departments .member h5{
                margin: 0 auto;
                font-size: 1.5rem;
            }
            .widget-cast .team.departments .member h6{
                font-size: 0.75rem;
            }

/* EVENT - Location */
.widget-location .img{
    width: 50%;
    overflow: hidden;
}
    .widget-location .img img{
        object-fit: contain;
        height: 100%;
        animation: zoom-in-zoom-out 20s ease-in-out infinite;
    }

    @keyframes zoom-in-zoom-out {
      0% {
        scale: 100%;
      }
      50% {
        scale: 200%;
      }
      100% {
        scale: 100%;
      }
    }
.widget-location .texts{
    width: 50%;
    padding: 2rem 2rem 2rem 0.5rem;
    display: flex;
    gap: 1rem;
}
    .widget-location .texts .location-title{
        color: var(--dark-blue);
        line-height: 115%;
        text-transform: none;
        letter-spacing: 0;
        font-size: 1.5rem;
        margin-bottom: 0.5rem;
        margin-top: 0;
    }
    .widget-location .texts p{
        margin: 0;
    }
.widget-location .card-more{
    margin-top: 1rem;
}


/*  Toggle Switch  */

.toggleSwitch span span {
	display: none;
}

.toggleSwitch {
	display: inline-block;
	height: 18px;
	position: relative;
	overflow: visible;
	padding: 0;
	cursor: pointer;
	width: 200px;
	background-color: white;
	height:34px;
}
.toggleSwitch * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.toggleSwitch label,
.toggleSwitch > span {
	line-height: 2rem;
	height: 2rem;
	vertical-align: middle;
}
.toggleSwitch input:focus ~ a,
.toggleSwitch input:focus + label {
	outline: none;
}
.toggleSwitch label {
	position: relative;
	z-index: 3;
	display: block;
	width: 100%;
}
.toggleSwitch input {
	position: absolute;
	opacity: 0;
	z-index: 5;
}
.toggleSwitch > span {
	position: absolute;
	left: 0;
	width: calc(100% - 6px);
	margin: 0;
	text-align: left;
	white-space: nowrap;
    margin:0 3px;
}
.toggleSwitch > span span {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	display: block;
	width: 50%;
	margin-left: 50px;
	text-align: left;
	font-size: 1rem;
	width: auto;
	left: 0;
	top: 0px;
	opacity: 1;
	width:40%;
	text-align: center;
    line-height:2rem;
}
.toggleSwitch a {
	position: absolute;
	right: 50%;
	z-index: 4;
	display: block;
	top: 0px;
	bottom: 0px;
	padding: 0;
	left: 0px;
	width: 50%;
	background-color:var(--dark-blue);
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
.toggleSwitch > span span:first-of-type {
	color: #FFF;
	opacity: 1;
	left: 0;
	margin: 0;
    width: 50%;
}
.toggleSwitch > span span:last-of-type {
	left:auto;
	right:0;
    color:var(--dark-blue);
	margin: 0;
    width: 50%;
}
.toggleSwitch > span:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: -2px;
	/* background-color: #fafafa;
	border: 1px solid #ccc; */
	border-radius: 30px;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
.toggleSwitch input:checked ~ a {
	left: calc(50% - 3px);
}
/* .toggleSwitch input:checked ~ span:before {
	border-color: #0097D1;
	box-shadow: inset 0 0 0 30px #0097D1;
}*/
.toggleSwitch input:checked ~ span span:first-of-type {
	left:0;
	color:var(--dark-blue);
}
.toggleSwitch input:checked ~ span span:last-of-type {
	/* opacity: 1;
	color: #fff;	 */
	color:#FFF;
}

/* Switch Sizes */
.toggleSwitch.large {
	width: 60px;
	height: 27px;
}
.toggleSwitch.large a {
	width: 27px;
}
.toggleSwitch.large > span {
	height: 29px;
	line-height: 28px;
}
.toggleSwitch.large input:checked ~ a {
	left: 41px;
}
.toggleSwitch.large > span span {
	font-size: 1.1em;
}
.toggleSwitch.large > span span:first-of-type {
	left: 50%;
}
.toggleSwitch.xlarge {
	width: 80px;
	height: 36px;
}
.toggleSwitch.xlarge a {
	width: 36px;
}
.toggleSwitch.xlarge > span {
	height: 38px;
	line-height: 37px;
}
.toggleSwitch.xlarge input:checked ~ a {
	left: 52px;
}
.toggleSwitch.xlarge > span span {
	font-size: 1.4em;
}
.toggleSwitch.xlarge > span span:first-of-type {
	left: 50%;
}

  /*  End Toggle Switch  */



.list-foot{
    padding:2rem 0 0;
}
.list-foot .pages {
    grid-column-gap: 0.5rem;
}
.list-foot .pages a{
    font-family: "MullerNext-Regular", Arial, Helvetica, sans-serif;
    font-size: 1rem;
    padding: 0.5rem 1rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.list-foot .pages a:hover{
    background-color: var(--dark-blue);
    color:white;
    text-decoration: none;
}
.list-foot .pages a.current{
    font-family: "MullerNext-Bold", Arial, Helvetica, sans-serif;
}
.list-foot .pages a.not-active{
    color:var(--pale-gray);
    cursor: default;
}
.list-foot .pages a.not-active:hover{
    text-decoration: none;
    background-color: rgb(233,235,236);
}
.list-foot .pages .dots{
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: "MullerNext-Regular", Arial, Helvetica, sans-serif;
    font-size: 1rem;
    color: var(--pale-gray);
}



/* POSTS ------------------------------------------------- */

.list{
    grid-row-gap: 1rem;
}
    .list .card{
        position: relative;
    }
        .list .tag{
            position: absolute;
            top: 1.75rem;
        }

.grid{
    grid-row-gap: 1rem;
    grid-column-gap: 1rem;
}

.card{
    background: #fff;
    grid-column-gap: 1.5rem;
    transition: all 100ms ease-in;
}
    .card:hover{
        box-shadow: 0px 0px 0.5rem rgba(0,0,0,0.25);
    }
    .card:hover .card-more div{
        background-color:var(--dark-blue);
        color: white;
        margin: -1rem -2rem -1rem 0rem;
        text-decoration: none;
        width: fit-content;
    }
    .card:hover .posted-date,
    .card:hover .card-desc,
    .card:hover .card-desc p{
        color: var(--pale-gray);
    }

.post-details .container{
    border:0;
}
.post-details .post-content h1{
    width: 640px;
}
.post-details .post-content .main-img,
.post-details .post-content h1,
.post-content .rich-text p{
    margin: 0;
}
.post-content .rich-text{
    padding-top: 2rem !important;
}
.post-content .rich-text{
    max-width: 640px;
}

/* CARD IMAGE */
.card-img{
    overflow: hidden;
    transition: all 100ms ease-in;
    height: 100%;
}
.card-img .main-img {
    transition: all 100ms ease-in;
    object-fit: cover;
    width: 100%;
    height: 100%;
    aspect-ratio: 3 / 2;
}
.list .card:hover .card-img .main-img,
.grid .card:hover .card-img .main-img{
    transform: scale(1.1);
}

/* News */
.page-header.news{
    background-color: var(--vivid-blue);
}
.page-header.jobs{
    background-color: var(--vivid-teal);
}
.page-header.medias{
    background-color: var(--vivid-orange-new);
}
.page-header.help{
    background-color: #486284;
}
.page-header.buyer{
    background-color: var(--pale-gray);
}
.page-header.buyer::before,
.page-header.help::before,
.page-header.medias::before,
.page-header.jobs::before,
.page-header.news::before{
    display: none;
}

.subnav .nav-item.small.active.news,
.subnav .nav-item.small.active.jobs,
.subnav .nav-item.small.active.medias,
.subnav .nav-item.small.active.help,
.subnav .nav-item.small.active.buyer{
    color:white;
    margin: 0 0 -0.5rem;
    padding: 0.5rem 0.75rem;
}
.subnav .nav-item.small.active.news{
    background-color: var(--vivid-blue);
    border-color: var(--vivid-blue);
}
.subnav .nav-item.small.active.jobs{
    background-color: var(--vivid-teal);
    border-color: var(--vivid-teal);
}
.subnav .nav-item.small.active.medias{
    background-color: var(--vivid-orange);
    border-color: var(--vivid-orange);
}
.subnav .nav-item.small.active.help{
    background-color: var(--vivid-yellow);
    border-color: var(--vivid-yellow);
}
.subnav .nav-item.small.active.buyer{
    background-color: var(--pale-gray);
    border-color: var(--pale-gray);
}

/* CARD TEXT */

a.card:hover{
    text-decoration: none !important;
}
    a.card .card-more{
        margin: 1rem 0 0 0;
    }
    a.card .card-more div{
        padding: 0.5rem 1rem;
        color:var(--dark-blue);
        text-decoration: none;
        margin: 0;
        width: fit-content;
        transition: all 100ms ease-in;
        border: 1px solid var(--dark-blue);
    }
        a.card .card-more div i{
            margin-left: 0.5rem;
        }
    a.card:hover .card-more div{
        margin: 0;
    }

/* Accessible card link styling for team member cards */
a.card.member {
    display: block;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

a.card.member:hover,
a.card.member:focus {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    text-decoration: none;
}

a.card.member:focus {
    outline: 2px solid var(--vivid-blue);
    outline-offset: 2px;
}

/* Ensure inner text elements maintain correct styling */
a.card.member h5,
a.card.member h6,
a.card.member .card-more {
    color: inherit;
}

.card-txts{
    padding: 2rem 0 2rem 0;
    font-size: 1rem;
    grid-row-gap: 1.5rem;
}
    .type{
        text-transform: uppercase;
        font-size: 0.75rem;
        letter-spacing: 0.5px;
    }
        .type.label-news{
            color: var(--vivid-blue);
        }
        .type.label-medias{
            color: var(--vivid-orange);
        }
        .type.label-jobs{
            color: var(--vivid-teal);
        }
        .type.label-help{
            color: var(--vivid-yellow);
        }
        .type.label-buyer{
            color: var(--pale-gray);
        }
    .type.tag{
        padding: 0;
        border: none;
        font-family: "MullerNext-Medium", Arial, Helvetica, sans-serif;;
        }

    .card-txts .title{
        color:#132F55;
        font-size: 1.25rem;
        line-height: 115%;
        height: max-content;
    }
    .posted-date{
        font-size: 0.75rem;
        text-transform: uppercase;
        font-family: "MullerNext-Regular", Arial, Helvetica, sans-serif;
    }
    .list .posted-date{
        margin-top: 1rem;
    }

.card-desc{
    overflow: hidden;
    text-overflow: ellipsis;
}
    .card-desc p {
        margin: 0;
    }
    .post .card-desc{
        padding:0;
    }
.col.card-more{
    padding: 0 3rem 2rem 0;
    width: min-content;
    text-wrap: nowrap;
}
.list .col.card-more{
    display: block;
    margin: 0;
    padding: 0;
}
    .list .card-more div{
        padding: 0.5rem 1rem;
        color:var(--dark-blue);
        text-decoration: none;
        margin: -1rem;
        width: fit-content;
        transition: all 100ms ease-in;
    }
    .list .card-more div i{
        margin-left: 0.5rem;
    }

.grid {
    display: flex;
    flex-flow: wrap;
}
    .grid .card{
        width: calc((100% - 2rem)/3);
    }
        .grid .card-img{
            height: auto;
            aspect-ratio: 5/3.12;
        }
            .grid .card-img .main-img{
                width: 100%;
            }
    .grid .card .card-txts{
        padding: 2rem 2rem 1.5rem 2rem;
        display: flex;
        flex-direction: column;
    }
        .grid .event.card .author{
            max-width: 20rem;
            font-weight: normal;
        }
        .grid .event.card .title{
            overflow-wrap: break-word;
            max-width:20rem;
        }
    .grid .card .card-more{
        padding: 0 0 1rem 0;
    }
    .grid .card .card-desc p{
        padding: 0;
        margin: 0;
    }
        .grid .card:hover .card-more div{
            margin-left: 0;
        }

    .list .card-txts{
    margin-top: 3rem;
    vertical-align: bottom;
    grid-row-gap: 0rem;
    padding: 3rem 0 2rem 0.5rem;
}

/* LABELS ---------------------------------------- */

.tags{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.5rem;
    z-index: 10;
}
.tag{
    color: white;
    padding: 0.45rem 0.75rem 0.4rem;
    width: fit-content;
    font-size: 0.8rem;
    border-radius: 1rem;
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    border:1px solid;
    text-transform: uppercase;
}
    .tag span{
        letter-spacing: 0.5px;
        line-height: 100%;
    }


    .tag-opera{
        background: var(--dark-blue);
        border-color: var(--dark-blue);
    }
    .tag-musical{
        background: var(--vivid-salmon);
        border-color: var(--vivid-salmon);
    }
    .tag-ballet{
        background: var(--vivid-blue);
        border-color: var(--vivid-blue) ;
    }
    .tag-dance{
        background: var(--vivid-purple);
        border-color: var(--vivid-purple);
    }
    .tag-symconcert{
        background: var(--dark-teal);
        border-color: var(--dark-teal);
    }
    .tag-concert{
        background: var(--black);
        border-color: var(--black);
    }
    .tag-camconcert{
        background: var(--vivid-teal);
        border-color: var(--vivid-teal);
    }
    .tag-choir{
        background: var(--vivid-green);
        border-color: var(--vivid-green);
    }
    .tag-operetta{
        background: var(--vivid-pink);
        border-color: var(--vivid-pink);
    }
    .tag-platform{
        color: var(--pale-blue);
        border-color: var(--pale-blue);
    }
    .tag-guest,
    .tag-travel{
        color: var(--pale-blue);
        border-color: var(--pale-blue);
    }
        .open .tag-travel,
        .active:hover .tag-travel{
            border-color: white;
            color: white;
        }
    .tag-special{
        color: var(--amber-gold);
        border: none;
        background: none;
        padding: 0.5rem 0 !important;
        margin: 0 0 0 0.25rem;
    }
        .tag-special i{
            color: var(--vivid-yellow);
        }
        .tag-special span{
            margin-top:1.5px;
        }
        .program .accordion-header:hover .tag-special{
            border: none;
        }
    .tag-kids{
        color: var(--vivid-orange);
        border-color: var(--vivid-orange);
    }
    .tag-operaopen{
        background: var(--dark-purple);
        border-color: var(--dark-purple);
        color:white;
    }
        .tag-operaopen i{
            color: var(--light-yellow);
        }

    .program.program-tickets .accordion-header:hover .tag,
    .program.program-tickets .active .accordion-header .tag{
        background: none;
        border-color: white;
    }


/* POST DETAILS -------------------------------------- */

.post-details.page-content{
    background: white;
}
    .post-details .container{
        width: 900px;
    }
    .post-details .type{
        padding: 0;
        margin-bottom: 2rem;
    }
    .post-details .published{
        display: flex;
        flex-direction: column;
        grid-row-gap: 0.25rem;
        padding: 0;
        margin-top: 2rem;
    }
    .post-details .post-content{
        grid-row-gap:0rem;
    }
    .post-details .post-content h1{
        font-family: "MullerNext-Medium";
        font-size: 3rem;
        line-height: 110%;
        color: var(--dark-blue);
        width: 100%;
    }
    .post-details .post-content .main-img{
        padding: 3rem 0 0;
        width: 900px;
    }
    .post-content .rich-text{
        padding: 0;
    }
    .post-content .share{
        margin: 4rem 4rem;
        display: none;
    }



/* PERFORMANCE ---------------- */
.repertoare .event .tags{
    margin: 0;
    width: 100%;
}
.repertoare .card .tag{
    margin: 0;
}
.event .author{
    font-family: "MullerNext-Regular", Helvetica, Arial, sans-serif;
    font-size: 1rem;
    line-height: 115%;
    color:var(--pale-blue);
    margin: 0 0 -1rem 0;
}
.list .event .author{
    margin: 0 0 0.25rem 0;
}
.event .title{
    font-family: "MullerNextWide-Bold", Helvetica, Arial, sans-serif;;
    text-transform: uppercase;
    font-size: 1.75rem;
    line-height: 115%;
    letter-spacing: 1px;
    margin: 0 0 0 0;
}

.filters{
    background-color: var(--pale-blue);
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 2rem 0;
    align-items: center;
}
    .filters .label{
        color: white;
    }
    .filters .tags{
        justify-content: center;
    }
    .filters .tag{
        border-color: white;
        color: white;
        transition: all ease-in 100ms;
        gap: 0.5rem;
        vertical-align: middle;
        cursor: pointer;
    }
    .filters .tag:hover{
        background-color: white;
        color: var(--dark-blue);
        opacity: 1;
    }
    .filters .tag.active{
        color: white;
        background-color: var(--dark-blue);
        border-color: var(--dark-blue);
        opacity: 1;
    }
    .filters .tag.active:hover{
        cursor: pointer;
    }
    .filters .tag.active:hover i.fa-xmark{
        color: var(--vivid-salmon);
        opacity: 1;
    }

    .filters .tag i{
        margin-top: -0.1rem;
    }

    .filters .tag i.fa-xmark{
        opacity: 0.5;
    }

    .filters .tag i.fa-check,
    .filters .tag i.fa-xmark{
        display: none;
    }
    .filters .tag.active i.fa-check,
    .filters .tag.active i.fa-xmark{
        display: inline;
    }
    .filters .tag.active i.fa-circle{
        display: none;
    }

    .no-results{
        margin: -2rem 2rem 2rem;
    }
    .no-results *{
        text-align: center;
        max-width: none;
        margin: 0.5rem 0;
    }
.repertoare .member .member-name{
        font-size: 1rem;
        letter-spacing: 0.1px;
        color: var(--dark-blue);
        text-transform: none;
        margin: 0;
    }
.repertoare .member .member-role{
        font-size: 0.75rem;
        margin-top: 0.175rem;
        letter-spacing: 0.5px;
        color: var(--pale-blue);
        text-transform: uppercase;
        max-width: 15rem;
        font-weight: normal;
    }



/* TEAM */
.teams .team{
    margin-bottom: 2rem;
}
.team{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
}
    .team .member{
        width: calc((100% - 1.5rem)/2);
        align-content: center;
        align-items: center;
    }
    .list .team {
        padding: 0;
        gap: 0.5rem;
        margin: 0;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .list .team .member{
        width: calc((100% - 0.5rem)/2);
        align-self: center;
    }
        .team .member .img{
            margin-right: 0.5rem;
            width: fit-content;
            background-color: var(--dark-blue);
            border-radius: 2rem;
            height: fit-content;
        }
            .team .member img{
                height: 2rem;
                width: 2rem;
                border-radius: 2rem;
                object-fit: cover;
                filter: opacity(0.9) brightness(1.1);
                object-position: 50% 0%;
            }
            .event:hover .team .member img{
                transform: scale(1);
            }
        .team .member .texts *{
            line-height: 115%;
        }
        .team .member .member-name{
            font-size: 1rem;
            line-height: 115%;
            letter-spacing: 0.1px;
            color: var(--dark-blue);
            font-family: "MullerNext-Medium", Arial, Helvetica, sans-serif;
            text-transform: none;
            margin: 0;
            text-overflow: ellipsis;
        }
        .team .member .member-role{
            font-size:0.75rem;
            letter-spacing: 0.5px;
            color: var(--pale-blue);
            text-transform: uppercase;
            margin: 0.25rem 0 0 0;
            max-width: 15rem;
            font-weight: normal;
        }
        .label-guest{
            color:var(--vivid-orange);
            font-size: 0.75rem;
            width: min-content;
            margin: 0 0 0.1rem 0;
        }

.card.event .team{
    flex-direction: column;
    flex-wrap: nowrap;
}
    .card.event .team .member {
        width:100%;
    }
    .card.event .team .member img{
        height: 3rem;
        width: 3rem;
    }
        .card.event .team .member h5{
            font-size: 1rem;
        }
        .card.event .team .member h6{
            font-size: 0.75rem;
            margin-top: 0.25rem;
        }

.grid .col.team{
    flex-direction: row;
    width: fit-content;
    margin: 0;
    padding: 0;
}
.list .card-desc{
    padding: 2rem 2rem 2rem 0;
    align-self: end;
    gap: 2rem;
}
.team-simple{
    gap: 3rem;
    padding: 2rem 0;
}
.team-simple .member{
    width: calc((100% - 10rem)/4);
}
    .team-simple .member .texts{
        width: 100%;
    }
        .team-simple .member .texts .member-name{
            font-size: 1.25rem;
            max-width: none;
        }
        .team-simple .member .texts .member-role{
            font-size: 0.8rem;
            margin: 0.5rem 0 0;
        }



/* PERFORMANCE DETAILS ----------------------------------  */
.sticky-header{
    position: sticky;
    z-index: 200;
    background: var(--dark-blue);
    top: 0;
    box-shadow: var(--dark-blue) 0 0 2rem;
}
.sticky-header .container.tiny{
    display: flex;
    flex-direction: row;
    gap: 1rem;
    padding: 0.5rem 2rem;
    align-items: center;
    justify-content: end;
    border: none;
}
    .sticky-header .container.tiny a.logo img{
        height: 1.5rem;
        opacity: 0.75;
    }
    .sticky-header .container.tiny a.logo:hover img{
        opacity: 1;
    }
    .sticky-header .title{
        font-family: 'MullerNextWide-Bold', Helvetica, Arial, sans-serif;;
        text-transform: uppercase;
        color: white;
        font-size: 1rem;
        width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        text-wrap: nowrap;
    }
.sticky-header nav{
    width: auto;
    flex-wrap: nowrap;
    display: flex;
}
    .sticky-header nav .nav-item.small{
        color: white;
        padding: 0.25rem 1rem;
        font-size: 0.75rem;
        line-height: 0.75rem;
        padding: 0.5rem 0.75rem;
        flex-wrap: nowrap;
        display: flex;
    }
        .sticky-header nav .nav-item.small:hover{
            background-color: white;
            color: var(--dark-blue);
        }
            .sticky-header nav .nav-item.small span{
                font-size: 0.75rem;
                text-wrap: nowrap;
                margin-top: 0.1rem;
            }

    .page-header.event .tag-opera{
        border-color: white;
    }
    .page-header.event .page-author{
        margin: 0 0 0.5rem;
        height: auto;
        width: 55%;
        z-index: 100;
    }
        .page-header.event .page-author h2{
            color: white;
            font-size: 1.25rem;
            line-height: 115%;
            font-family: "MullerNext-Regular", Helvetica, Arial, sans-serif;
            font-weight: normal;
        }
.page-header.event .page-title{
    z-index: 10;
    width: 55%;
    padding: 0;
}
    .page-header.event .page-title h1{
        font-family: "MullerNextWide-Bold", Arial, Helvetica, sans-serif;
        font-size: 3.25rem;
        line-height: 120%;
        text-transform: uppercase;
        padding: 0;
        margin: 0;
    }
        .page-header.event .page-title h1:before{
            content: none;
        }


.page-header{
    position: relative;
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 1280px auto;
    background-clip: content-box;
}
    .page-header::before{
        content:'';
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(0deg, rgba(19, 47, 85, 1) 0%, rgba(19, 47, 85, 0) 20%);
        position: absolute;
    }
.hor-grad{
    background: linear-gradient(to right, rgba(19, 47, 85, 1) 25%, rgba(19, 47, 85, 0) 75%);
}
.event-head{
    vertical-align: middle;
    padding: 4rem 0;
    min-height: 15rem;
}

.page-content{
    background-color: var(--light-gray);
}

.event .tags{
    z-index: 50;
    margin: 0 0 3rem 0;
    width: 55%;
}

.event.page-header{
    background-size: cover !important;
}
.page-header .page-desc{
    z-index: 50;
    margin-top: 2rem;
    width: 75%;
}
.page-header.simple .page-desc{
    height: auto;
    min-height: auto;
}
.page-header .page-desc p{
    color: white;
    font-size: 1.1rem;
}


/* New Gallery */
.head-gallery .container.gallery-container {
    /*overflow: hidden;
    white-space: nowrap;
    position: relative;
    margin: 0;
    display: flex;
    flex-direction: row;
    width: 100% !important;
    gap: 0;*/
    padding: 1rem 0 1rem !important;
    width: 100vw !important;
    border: none;
  }
    .gallery-container:hover .gallery {
        animation-play-state: paused;
    }
        .gallery{
            /* animation: 50s slide infinite linear; */
            text-align: center;
        }
            .gallery img {
                height: 7rem;
                width: auto;
                float: none;
                aspect-ratio: 1 / 1;
                object-fit: cover;
            }
            .gallery a{
                float: none;
                margin: 0.25rem;
                padding: 0;
                display: inline-block;
                aspect-ratio: 1 / 1;
                object-fit: cover;
            }
            .gallery a:hover{
                opacity: 0.75;
                transform: scale(1.05);
            }

  @keyframes slide {
    from {
      transform: translateX(1rem);
    }
    to {
      transform: translateX(-100%);
    }
  }

/* GALLERY
.head-gallery{
    height: 13vw;
    position: relative;
    margin-top: 1rem;
}
    .head-gallery .gallery{
        display: flex;
        flex-direction: row;
        grid-column-gap: 1rem;
        width: fit-content;
        flex-wrap: nowrap;
        animation: gallery-move 5s ease-out;
        animation-iteration-count: infinite;
        right: 0;
        left: 0;
        bottom: 0;
        position: absolute;
        margin:0 auto;
    }

    @keyframes gallery-move {
    0% {
        transform: translate(-50%);
    }
    100% {
        transform: translate(0);
    }
    }


.head-gallery .gallery img{
    width: auto;
    height: 13vw;
}
*/


/* EVENT Dates - Accordeon */
.event-dates{
    background-color: var(--light-gray);
}
.event-dates .widget-content{
    margin-bottom: 0;
}
.event-dates .accordion{
    flex-direction: column;
    gap:0.5rem;
    align-content: flex-start;
}

.event-dates .accordion-item.head{
    background: none;
    padding: 0 1rem;
}
.event-dates .accordion-item.head .row div{
    font-size: 0.75rem;
    color: var(--pale-gray);
    line-height: 100%;
    text-transform: uppercase;
    font-family: "MullerNext-Regular", Helvetica, Arial, sans-serif;
    letter-spacing: 0.5px;
}

.event-dates .accordion-item{
    padding: 1rem;
    background-color: white;
}
.event-dates .accordion-item i{
    margin-right: 0.25rem;
}
.event-dates .accordion-item .tag i{
    margin:0;
}
.event-dates .active.card{
    opacity: 1;
    background-color: white;
}
.event-dates .open.card,
.event-dates .active.card:hover{
    opacity: 1;
    background: var(--dark-blue);
    color: white;
}
    .event-dates .open.card .accordion-body .event-desc,
    .event-dates .open.card .accordion-body .label-group{
        color: var(--pale-gray);
    }
    /* no need to show it here */
    .event-dates .open.card .accordion-body .event-desc{
        display: none;
    }
     /* no need to show it here */
    .event-dates .open.card .accordion-body .card-more{
        padding: 0;
        margin: 2rem 2rem 0 0;
        display: none;
    }
.event-dates .accordion-item .accordion-header{
    display: flex;
    flex-direction: row;
    gap:2rem;
    align-items: center;
}
.event-dates .card.head{
    background-color: none;
}
.event-dates .card.head:hover{
    box-shadow: none;
    cursor: default;
}

.card .new-date{
    background-color: var(--vivid-orange);
    color: white;
    padding: 0.1rem 0.3rem 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 0.25rem;
    font-size: 0.65rem;
    align-items: center;
    width: fit-content;
}
    .card .new-date span{
        text-wrap: nowrap;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }

.card .date{
    font-size: 2rem;
    line-height: 100%;
    width: 6rem;
}
    .card .date span:first-of-type{
        font-family: "MullerNext-Bold";
    }
    .card .date span:last-of-type{
        font-family: "MullerNext-Regular", Helvetica, Arial, sans-serif;
    }

.card .time{
    text-transform: uppercase;
    font-size: 0.9rem;
    display: flex;
    flex-direction: column;
    width: 7rem;
}
    .card .time span:first-of-type{
        font-family: "MullerNext-Regular", Helvetica, Arial, sans-serif;
    }
    .card .time span:last-of-type{
        font-family: "MullerNext-Bold";
    }

.card .location{
    display: flex;
    flex-direction: row;
    text-transform: uppercase;
    font-size: 0.8rem;
    line-height: 125%;
    font-family: "MullerNext-Regular", Helvetica, Arial, sans-serif;
    align-items: center;
    width: 10rem;
}
    .card .location i{
        opacity: 0.5;
        font-size: 1.5rem;
        margin-right: 0.5rem;
    }

.event-dates .accordion-item .tags{
    width: 13rem;
}

.event-dates .accordion-item .info{
    width: 20rem;
    text-align: center;
}
    .status{
        padding: 0.5rem 1rem;
        text-align: center;
        color: white;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
        .status.past,
        .status.soldout{
            background: none;
            color: var(--pale-gray);
        }
        .status.comingsoon{
            background: none;
            color: var(--vivid-teal);
        }
        .open .status.past,
        .open .status.soldout{
            color: white;
        }

.event-dates .accordeon-button{
    position: absolute;
    bottom: 0;
    right: 0;
}
.event-dates .accordion-item .details-button{
    background: none;
    border: 1px solid var(--pale-gray);
    color: var(--pale-gray);
}
    .event-dates .accordion-item:hover .details-button{
        background: var(--pale-gray);
        color: white;
    }
    .event-dates .active.card:hover .details-button{
        color: var(--dark-blue);
        background: white;
    }

.event-dates .card .accordion-header{
    position: relative;
}
    .event-dates .open.card .details-button{
        color: var(--dark-blue);
        background: white;
        border: none;
    }
        .event-dates .open.card .details-button i{
            transform: rotate(180deg);
        }

/* Related Performances */
#related-events .grid {
    width: 100%;
    justify-content: center;
}

/* Related News */
#related-posts .card .card-more{
    margin-left: 0;
}



/* PROGRAM TICKETS */

.program .page-title{
    width: 100%;
}
.program .page-title .label{
    color: white;
}
.page-title .label-group{
    color: white;
    opacity: 0.75;
}
.page-title h1.no-deco{
    font-family: "MullerNextWide-Bold", Helvetica, Arial, sans-serif;;
    font-size: 3rem;
    line-height: 100%;
    color:#fff;
    letter-spacing: 0.5px;
    padding: 0;
    margin: 0.5rem 0 0 0;
    text-transform: uppercase;
}
    .page-title h1.no-deco::before{
        content:none;
    }


.program .month{
    font-size: 1.5rem;
    text-transform: uppercase;
    line-height: 120%;
    margin: 0 0 1rem 0;
    padding: 0;
}
.program .month span{
    font-weight: lighter;
    margin-left: 0.5rem;
}

.program .accordion {
    margin-bottom: 4rem;
}

.program .accordion-header{
    padding: 2rem;
    display: flex;
    flex-direction: row;
    min-height: 10.25rem;
    align-items: stretch;
    position: relative;
}
.program .accordion-header > a{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 14rem;
    z-index: 100;
}
.program .accordion-header:hover{
    animation: ticket-show 0.2s ease-out;
}
    @keyframes ticket-show{
        0% {
            opacity: 0;
            top: 0;
        }
        33% {
            opacity: 0.33;
        }
        66% {
            opacity: 0.66;
        }
        100% {
            opacity: 1;
        }
    }
    .program .when{
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        padding:0 2rem 0 0;
        width: 24rem;
   }

        .program .when .day{
            text-transform: uppercase;
        }
        .program .when .date{
            font-size: 3rem;
        }
        .program .when .time{
            font-size: 1.5rem;
        }

    .program .location{
        position: absolute;
        bottom: 2rem;
    }

.program .main-img{
    height: auto;
}
    .program .main-img img{
        width: 15rem;
        object-fit: cover;
        height: 100%;
    }
    .program .accordion-header:hover .main-img,
    .program .active .main-img{
        position: absolute;
        right: 14.25rem;
        top: 0;
        bottom: 0;
    }
        .program .accordion-header:hover .main-img img,
        .program .active .main-img img{
            width: 30rem;
            height: 100%;
        }
            .program .accordion-header:hover .main-img::before,
            .program .active .main-img::before {
                content: '';
                z-index: 10;
                width: 100%;
                height: 100%;
                display: block;
                position: absolute;
                top: 0rem;
            }
                .program .card .accordion-header:hover .main-img::before,
                .program .active .main-img::before,
                .program .opera .accordion-header:hover .main-img::before,
                .program .active.opera .main-img::before{
                    background: linear-gradient(to right, rgba(19, 47, 85, 1) 0%, rgba(19, 47, 85, 0) 100%);
                }
                .program .ballet .accordion-header:hover .main-img::before,
                .program .active.ballet .main-img::before{
                    background: linear-gradient(to right, rgba(25, 123, 193, 1) 0%, rgba(25, 123, 193, 0) 100%);
                }
                .program .symconcert .accordion-header:hover .main-img::before,
                .program .active.symconcert .main-img::before{
                    background: linear-gradient(to right, rgba(40, 96, 127, 1) 0%, rgba(40, 96, 127, 0) 100%);
                }
                .program .musical .accordion-header:hover .main-img::before,
                .program .active.musical .main-img::before{
                    background: linear-gradient(to right, rgba(209, 65, 91, 1) 0%, rgba(209, 65, 91, 0) 100%);
                }
                .program .dance .accordion-header:hover .main-img::before,
                .program .active.dance .main-img::before{
                    background: linear-gradient(to right, rgba(86, 73, 152, 1) 0%, rgba(86, 73, 152, 0) 100%);
                }
                .program .concert .accordion-header:hover .main-img::before,
                .program .active.concert .main-img::before{
                    background: linear-gradient(to right, rgba(28, 30, 43, 1) 0%, rgba(28, 30, 43, 0) 100%);
                }
                .program .camconcert .accordion-header:hover .main-img::before,
                .program .active.camconcert .main-img::before{
                    background: linear-gradient(to right, rgba(2, 133, 115, 1) 0%, rgba(2, 133, 115, 0) 100%);
                }
                .program .operetta .accordion-header:hover .main-img::before,
                .program .active.operetta .main-img::before{
                    background: linear-gradient(to right, rgba(168, 66, 127, 1) 0%, rgba(168, 66, 127, 0) 100%);
                }
                .program .choir .accordion-header:hover .main-img::before,
                .program .active.choir .main-img::before{
                    background: linear-gradient(to right, rgba(22, 136, 77, 1) 0%, rgba(22, 136, 77, 0) 100%);
                }

.program .list .card .card-txts{
    position: relative;
    margin: 0;
    padding: 4rem 0 0 2rem;
    align-content: end;
    width: 100%;
}
    .program .card-txts .author{
        margin-bottom: 0.5rem;
        font-size: 1.15rem;
        font-weight: normal;
    }
    .program .card-txts .title{
        font-size: 1.75rem;
        width: fit-content;
    }

.program .tags{
    position: absolute;
    top: 0;
    left: 2rem;
    width: 30rem;
}
    .program .tag{
        position: static;
    }

.program .dots{
    opacity: 0;
    position: absolute;
}
    .program .accordion-header:hover .dots,
    .program .active .dots{
        opacity: 1;
        height: 100%;
    }
        .program .dots::before,
        .program .dots::after{
            width: 2rem;
            height: 1rem;
            background: var(--light-gray);
            content: '';
            display: inline-block;
            position: absolute;
        }
        .program .dots::before{
            top: -2rem;
            right: 11.25rem;
            border-radius: 0 0 1rem 1rem;
        }
        .program .dots::after{
            bottom: -2rem;
            right: 11.25rem;
            border-radius: 1rem 1rem 0 0;
        }
        .program .active .dots::after{
            display: none;
        }



.program .accordeon-buttons{
    padding:0 0 0 2rem;
    display: flex;
    flex-direction: column;
    z-index: 10;
    position: relative;
    border-left:0.5rem dotted transparent;
    align-content: center;
    width: auto;
    align-items: flex-end;
}
    .program .details-button{
        opacity: 0;
        position: absolute;
        bottom: 0rem;
        right: 0rem;
    }
    .program .accordion-header:hover .accordeon-buttons,
    .program .active .accordeon-buttons{
        border-left-color: var(--light-gray);
    }
        .program .accordion-header:hover .details-button,
        .program .active .details-button{
            opacity: 1;
            background-color: white;
            color: var(--dark-blue);
        }

    .program .alert{
            background-color: var(--vivid-salmon);
            color: white;
            text-align: center;
            padding: 0.5rem 0 !important;
            margin: 0;
            display: flex;
            flex-direction: column;
            gap: 0.25rem;
        }

    .program .alert,
    .program .tickets-button,
    .program .accordion-header:hover .details-button,
    .program .active .details-button{
        width: 10rem;
    }

    .program .tickets-button{
        background-color: transparent;
        border: 1px solid var(--dark-blue);
        color: var(--dark-blue);
        padding: 0.5rem 1rem;
        border-radius: 0rem;
        font-family: 'MullerNext-Medium';
        text-transform: uppercase;
    }
        .program .accordion-header:hover .tickets-button{
            border-color: white;
            color: white;
        }
        .program .active .tickets-button,
        .program .acitve .accordion-header:hover .tickets-button{
            display: none;
        }
        .program .tickets-button i{
            margin:0 0.25rem 0 0;
        }
        .program .tickets-button .fa-angle-down{
            opacity: 0.5;
        }

.program .card:hover{
    box-shadow: none;
}
.program .active .accordion-header{
    position: relative;
}
.program .active .accordion-header .when,
.program .active .accordion-header .card-txts .author,
.program .active .accordion-header .card-txts .title,
.program.program-tickets .accordion-header:hover .when,
.program.program-tickets .accordion-header:hover .card-txts .author,
.program.program-tickets .accordion-header:hover .card-txts .title{
    color:white;
}
.program.program-tickets .active .accordion-header .card-txts .tag span,
.program.program-tickets .active .accordion-header .card-txts .tag i,
.program.program-tickets .accordion-header:hover .card-txts .tag span,
.program.program-tickets .accordion-header:hover .card-txts .tag i{
    color: white;
}
    .program .card .accordion-header:hover,
    .program .active .accordion-header,
    .program .opera .accordion-header:hover,
    .program .active.opera .accordion-header{
        background-color: var(--dark-blue);
    }
    .program .ballet .accordion-header:hover,
    .program .active.ballet .accordion-header{
        background-color: var(--vivid-blue);
    }
    .program .symconcert .accordion-header:hover,
    .program .active.symconcert .accordion-header{
        background-color: var(--dark-teal);
    }
    .program .musical .accordion-header:hover,
    .program .active.musical .accordion-header{
        background-color: var(--vivid-salmon);
    }
    .program .dance .accordion-header:hover,
    .program .active.dance .accordion-header{
        background-color: var(--vivid-purple);
    }
    .program .concert .accordion-header:hover,
    .program .active.concert .accordion-header{
        background-color: var(--black);
    }
    .program .camconcert .accordion-header:hover,
    .program .active.camconcert .accordion-header{
        background-color: var(--vivid-teal);
    }
    .program .operetta .accordion-header:hover,
    .program .active.operetta .accordion-header{
        background-color: var(--vivid-pink);
    }
    .program .choir .accordion-header:hover,
    .program .active.choir .accordion-header{
        background-color: var(--vivid-green);
    }
        .program .accordion-header:hover .card-txts,
        .program .list .active .card-txts{
            z-index: 10;
            padding-right: 15rem;
        }




/* Accordeon body */
.event-dates .accordion-item .accordion-body .labels-group{
    margin-top: 3rem;
}
.event-dates .accordion-item .accordion-body .team{
    gap: 3rem;
    margin: 0;
}
    .event-dates .accordion-item .accordion-body .team .member{
        width: calc((100% - 9rem)/4);
        align-items: center;
        gap: 1rem;
    }
        .event-dates .accordion-item .accordion-body .team .member .img,
        .event-dates .accordion-item .accordion-body .team .member .img img{
            width: 4rem;
            height: 4rem;
            border-radius: 2rem;
            margin:0;
        }
        .event-dates .accordion-item .accordion-body .team .member .texts{
            position: relative;
            width: auto;
        }
        .event-dates .accordion-item .accordion-body .team .member .texts .label-guest{
            position: absolute;
            top: -0.75rem;
        }
    .event-dates .accordion-header .new-date{
        gap: 0.15rem;
        font-size: 0.65rem;
        margin-bottom: 0.5rem;
    }
        .event-dates .accordion-header .new-date span{
            text-wrap: wrap;
            line-height: 100%;
            margin: 0.15rem 0;
        }

.accordion-body{
    background: white;
    padding: 2rem;
    margin: 1rem -1rem -1rem;
    border-top: 0;
}
.accordion-body .event-texts{
    width: 55rem;
    padding: 0 0 0 2rem;
}



.program .accordion-body{
    margin: 0;
    display: flex;
    flex-direction: row;
    border: 0;
}
.program .accordion-body .event-cast{
    width: 60%;
    gap: 2rem;
    display: flex;
    flex-direction: column;
}
.program .accordion-body .team{
    align-items: center;
    padding: 0;
    grid-column-gap: 3rem;
    grid-row-gap:1rem;
}
.program .accordion-body .member{
    display: flex;
    width: fit-content;
    align-items: center;
}

.program .accordion-body .event-texts{
    width: 40%;
    gap: 1.5rem;
    display: flex;
    flex-direction: column;
    padding: 0 0 1rem 2rem;
}
.program .accordion-body .event-texts .row{
    gap: 1.5rem;
}
.program .accordion-body .event-texts .row .labels-group{
    width: 100%;
}
.program .accordion-body .event-texts .row .labels-group .label-group{
    margin: 0;
}
.program .accordion-body .event-texts .row .card-more{
    align-self: end;
    margin: 0;
}
    .program .accordion-body .event-texts .row .card-more a{
        border: 1px solid var(--dark-blue);
        margin: 0;
    }
        .program .accordion-body .event-texts .row .card-more a:hover{
            margin: 0;
        }
    .program .opera .accordion-body{
        border-color: var(--dark-blue);
    }
    .program .ballet .accordion-body{
        border-color: var(--vivid-blue);
    }
    .program .musical .accordion-body{
        border-color: var(--vivid-salmon);
    }
    .program .concert .accordion-body{
        border-color: var(--black);
    }
    .program .symconcert .accordion-body{
        border-color: var(--pale-blue);
    }
    .program .camconcert .accordion-body{
        border-color: var(--vivid-teal);
    }

.program .active .details-button{
    padding: 0.5rem 1rem 0.5rem 1rem;
    margin: 0;
    position: absolute;
    bottom: -2rem;
    width: 10rem;
}
.program .event .accordion-body .team{
    flex-wrap: wrap;
    flex-direction: row;
    gap: 2rem;
}
    .program .event .accordion-body .team .member{
        width: calc((100% - 2rem)/2);
    }
        .program .accordion-body .member .img,
        .program .accordion-body .member .img img{
            height: 5rem;
            width: 5rem;
            border-radius: 50%;
        }
        .program .accordion-body .member .img{
            margin-right: 1rem;
        }
        .program .accordion-body .team .member .member-name{
            font-size: 1.175rem;
        }
        .program .accordion-body .team .member .member-role{
            font-size: 0.7rem;
        }

    .program .event .accordion-body .team{
        flex-wrap: wrap;
        flex-direction: row;
        gap: 2rem;
    }

    .program .event .accordion-body .team.secondary .member{
        width: calc((100% - 4rem)/3);
    }
    .program .event .accordion-body .team.secondary > .label{
        width: 100%;
        margin-bottom: -2rem;
    }
        .program .accordion-body .secondary .member .img,
        .program .accordion-body .secondary .member .img img{
            height: 3rem;
            width: 3rem;
        }
        .program .accordion-body .team.secondary .member h5{
            font-size: 1rem;
        }


    .program .active .sellers{
        display: block;
        background: white;
        padding: 0.5rem;
        margin-bottom: 1rem;
        text-align: center;
        width: 9rem;
    }
        .program .active .sellers-list{
            display: flex;
            flex-direction: column;
            gap: 0.25rem;
        }
        .program .active .sellers-list .label{
            font-size: 0.75rem;
            margin: 0.25rem 0;
        }
        .program .active .sellers-list .cashiers{
            color: white;
        }
        .program .active .sellers-list .cashiers span{
            font-size: 0.75rem;
            margin: 0 auto;
        }
        .sellers-list .cashiers{
            padding: 0;
            align-items: center;
            font-family: 'MullerNext-Medium';
            text-transform: uppercase;
        }
            .sellers-list .cashiers i{
                margin-right: 0.5rem;
            }





/* Sellers */
.sellers{
    gap: 0.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.alert{
    color: var(--vivid-orange);
    text-transform: uppercase;
    margin-bottom: 0.25rem;
    font-size: 1rem;
    font-family: 'MullerNext-Medium';
    letter-spacing: 0.5px;
}
.alert i{
    margin-right: 0.25rem;
}

.sellers-list{
    display: flex;
    gap: 0.25rem;
    flex-wrap: nowrap;
    flex-direction: row;
}
    .sellers-list .seller-item{
        padding: 0.25rem 0.5rem;
        border-radius: 0.25rem;
        align-content: center;
        height: 1.5rem;
        overflow: hidden;
        transition: all 100ms ease-in;
    }
        .sellers-list .seller-item.eventim{
            background: #202867;
        }
        .sellers-list .seller-item.grabo{
            background: #248FDB;
        }
        .sellers-list .seller-item.cashiers{
            color:white;
            text-wrap: nowrap;
            background-color: var(--dark-blue);
            font-size: 0.8rem;
        }
        .sellers-list .seller-item:hover img{
            transform: scale(1.1);
            object-fit: cover;
        }




/* OPERA OPEN PLATFORM */

.platform.platform-operaopen .sticky-header{
    box-shadow: var(--dark-purple) 0 0 2rem;
}
    .platform-operaopen .sticky-header .title i{
        color: var(--vivid-yellow);
        margin-right: 0.5rem;
    }

.platform.platform-operaopen main,
.platform.platform-operaopen .sticky-header,
.platform.platform-operaopen .page-header{
    background-color: var(--dark-purple);
}
.platform.platform-operaopen .page-header{
    background-size: cover;
}
    .platform-operaopen .page-header.event .page-title h1 i{
        color: var(--vivid-yellow);
    }

.platform.platform-operaopen .program#dates .accordion-header .card{
    background-color: rgba(256,256,256,0.15);
    color: white;
}
    .platform.platform-operaopen #dates .accordion-header:hover{
        background-color: white;
    }
        .platform.platform-operaopen .accordion-header:hover .main-img:before{
            background: linear-gradient(to right, rgba(256, 256, 256, 1) 0%, rgba(256, 256, 256, 0) 50%);
        }
        .platform.platform-operaopen .program .accordion-header:hover .accordeon-buttons{
            border-left-color: var(--dark-purple);
        }
        .platform.platform-operaopen .program .dots::before,
        .platform.platform-operaopen .program .dots::after,
        .platform.platform-operaopen .program .accordion-header:hover .details-button{
            background: var(--dark-purple);
        }
        .platform.platform-operaopen .program#dates .accordion-header:hover .when,
        .platform.platform-operaopen .program .accordion-header:hover .author,
        .platform.platform-operaopen .program .accordion-header:hover .title{
            color: var(--dark-purple);
        }
        .platform.platform-operaopen .program .accordion-header:hover .tickets-button{
            border-color: var(--dark-purple);
        }
        .platform.platform-operaopen .program .accordion-header:hover .tickets-button{
            color: var(--dark-purple);
        }
        .platform.platform-operaopen .program#dates .accordion-header:hover .tag-special{
            background: rgba(256,256,256,0.75);
            padding: 0.6rem 0.75rem;
            border-radius: 1rem;
        }
        .platform-operaopen .active .accordion-header .accordeon-buttons{
            width: 24rem;
        }


.platform-operaopen .page-header .page-desc{
    min-height: auto;
}
    .platform.platform-operaopen .hor-grad{
        background: linear-gradient(to right, rgba(32, 40, 103, 1) 33%, rgba(19, 47, 85, 0) 75%);
    }
    .platform-operaopen .page-header.event::before{
        background: linear-gradient(0deg, rgba(32, 40, 103, 1) 0%, rgba(32, 40, 103, 0) 20%);
    }

.platform-operaopen .page-content{
    z-index: 100;
    position: relative;
    background-color: var(--dark-purple);
}
    .platform-operaopen .rich-text{
        background: white;
        width: 100%;
        padding: 4rem 8rem;
    }
        .platform-operaopen .rich-text p{
            color: var(--dark-blue);
        }

.platform-operaopen .section-title,
.platform-operaopen .program .month,
.platform-operaopen .program .active .tickets-button,
.platform-operaopen .program .accordion-header:hover .details-button{
    color: white;
}
.platform-operaopen .program .accordion-header .author,
.platform-operaopen .program .accordion-header .day,
.platform-operaopen .program .accordion-header .time{
    opacity: 0.75;
}
.platform-operaopen .program .active .tickets-button{
    border-color: white;
}


/* Opera Open Stars */
.platform-operaopen .subteam .team {
    row-gap: 3rem;
    justify-content: center;
}
.platform-operaopen .subteam .team .img{
    overflow: hidden;
}
    .platform-operaopen .subteam .team .img img{
        object-fit: cover;
    }

.platform-operaopen .subteam .team .card:hover{
    box-shadow: none;
}
    .platform-operaopen .subteam .team .member{
        width: calc((100% - 3rem) / 4);
        flex-direction: column;
        align-content: baseline;
        background: none;
    }
        .platform-operaopen .subteam .team .member .img{
            width: 100%;
            object-fit: cover;
            border-radius: 0;
            aspect-ratio: 3 / 4;
        }
            .platform-operaopen .subteam .team .member .img img{
                height: 100%;
                width: 100%;
                object-fit: cover;
                border-radius: 0;
                transition: all 0.1s ease-in;
            }
        .platform-operaopen .subteam .team .member .texts{
            padding: 1rem 0 0;
            gap:0.5rem;
            text-align: center;
            display: flex;
            flex-direction: column;
        }
            .platform-operaopen .subteam .team .member .texts .member-name{
                font-size: 1.5rem;
                color: white;
                max-width: none;
            }
            .platform-operaopen .subteam .team .member .texts .member-role{
                font-size: 0.9rem;
                color: white;
                opacity: 0.75;
                max-width: none;
            }

#operaopen-program .card{
    background: none;
    color:white;
}
    #operaopen-program .accordion-header{
        padding: 0 0 3rem;
        margin: 0 0 3rem;
        border-bottom: 1px solid rgba(256, 256, 256, 0.25);
        color: white;
        min-height: 9rem;
    }
        .platform.platform-operaopen #operaopen-program .accordion-header:hover{
            background-color: var(--dark-purple);
        }
    #operaopen-program.program .when .date{
        font-size: 2.5rem;
    }
    .program#operaopen-program .details-button{
        opacity: 1;
    }
        .program#operaopen-program .accordion-header:hover .accordeon-buttons{
            border:none;
            padding: none;
        }
    #operaopen-program.program .accordion-header:hover .main-img{
        position: relative;
        right: auto;
        top: auto;
        bottom: auto;
    }
        #operaopen-program.program .accordion-header:hover .main-img:before{
            display: none;
        }
            #operaopen-program.program .accordion-header:hover .main-img img{
                width: 15rem;
            }
    #operaopen-program.program .accordion-header:hover .card-txts{
        padding-right: 2rem;
    }
    #operaopen-program.program .accordion-header .author{
        color: white;
        opacity: 0.5;
    }
    #operaopen-program.program .accordion-header .title{
        color: white;
    }
    #operaopen-program.program .location{
        bottom: 3rem;
    }
    #operaopen-program.program .card-more a{
        background-color: var(--dark-purple);
    }
    #operaopen-program.program .tag-operaopen{
        border-color: white;
    }

.platform-operaopen .card-txts .title,
.platform-operaopen .card-more a{
    color: var(--dark-purple);
}
.platform-operaopen .card:hover .card-more a{
    background-color: var(--dark-purple);
    color: white;
}
.platform-operaopen .tabs{
    display: none;
}

.platform-operaopen #archive a.card .card-more{
    margin: 0;
    display: flex;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    width: 6.75rem;
    border: 1px solid var(--dark-blue);
    transition: all ease-in 200ms;
}
    .platform-operaopen #archive a.card:hover .card-more{
        margin: 0;
        background-color: var(--dark-purple);
        color: white;
}

.operaopen-footer{
    padding-bottom: 4rem;
}
.operaopen-footer .container{
    border: 0;
}
.operaopen-footer .container > .row{
    gap: 4rem;
}
.operaopen-footer .platform-logo img{
    width: 10rem;
}
.operaopen-footer .row p{
    font-size: 1rem;
    color: white;
    margin: 0 auto 2rem;
}
.operaopen-footer .platform-main-sponsor a{
    margin: 0 auto 2rem;
}
.operaopen-footer .platform-main-sponsor img{
    width: 13rem;
    height: auto;
}
.operaopen-footer .platform-main-sponsor p{
    color: white;
    text-align: center;
}
.operaopen-footer .logo-gallery{
    gap: 2.5rem;
}
.operaopen-footer a img{
    width: 5rem;
    opacity: 0.75;
    transition: all 100ms ease-in;
}
.operaopen-footer a:hover img{
    opacity: 1;
}



/* Table Program */
.program.table .card{
    background-color: transparent !important;
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid rgba(0,0,0,0.25);
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
    align-items: center;
    gap: 0.75rem;
}
.program.table .list{
    background: white;
    padding: 2rem 2rem 1rem;
}
.program.table .list .card:last-child{
    border: none;
}

.program.table .card .when{
    gap: 0.1rem;
}
    .program.table .card .when:first-of-type{
        width: 6rem;
        padding: 0;
    }
    .program.table .card .when:nth-of-type(2){
        width: 6rem;
        padding: 0;
    }
    .program.table .card .when .date{
        font-size: 2rem;
    }
    .program.table .card .when .day,
    .program.table .card .when .time{
        font-size: 0.75rem;
    }
.program.table .list .card .location{
    position: relative;
    bottom: auto;
    width: 10rem;
    padding: 0 0 0 0.5rem;
}
    .program.table .list .card .location span{
        font-size: 0.75rem;
    }
.program.table .list .card .tags{
    width: 14rem;
    position: relative;
    margin: 0;
    flex-direction: row;
    padding: 0;
    left: auto;
}
.program.table .list .card .card-txts{
    width: 21rem;
    padding: 0;
    gap:0.25rem
}
    .program.table .list .card .card-txts .title{
        font-size: 1.3rem;
        text-wrap: auto;
        max-width: 20rem;
    }
    .program.table .list .card .card-txts .author{
        margin: 0;
        font-size: 0.9rem;
    }
.program.table .list .card .card-txts .tag{
    padding: 0;
    margin: 0 0 0.25rem;
}
.program.table .list .card .card-more{
    padding: 0 0 0 1rem;
    margin: 0;
    width: 8rem;
}
.program.table .card:hover{
    background-color: none !important;
}


/* TABS */
.tabs{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content:center;
    gap: 1rem;
}
.tab{
    height: 1.6rem;
    position: relative;;
}
.tab a{
    padding: 0.5rem;
    text-transform: none;
    text-transform: uppercase;
}
.tab.active a{
    background: white;
    color: var(--dark-blue);
    font-weight: bolder;
}
.tab a:hover{
    background-color: var(--dark-blue);
    color: white;
    text-decoration: none;
}
.tab .tooltip{
    display: flex;
    font-size: 1rem;
    background-color: var(--vivid-teal);
    color: white;
    gap: 0.5rem;
    position: absolute;
    top: -2rem;
    opacity: 0;
    transition: all 0.2s ease-in;
}
.tab a:hover .tooltip{
    opacity: 1;
    top: -2.5rem;
}


/* TEAMS */

/* Managemet */

.team.team-management{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap:1rem;
    margin: 0;
}
.subteam .team.team-management .member{
    width: calc((100% - 1rem)/2);
}
.team.team-management .member{
    width: calc((100% - 2rem)/3);
    display: flex;
    flex-direction: row;
    gap:0;
    align-items: center;
}
.team.team-management .member:hover{
    text-decoration: none;
}
.team.team-management .member:hover p{
    color: var(--dark-blue);
}
.team.team-management .img{
    border-radius: 0;
    width: 8rem;
    height: 100%;
    margin: 0;
    aspect-ratio: 2/3;
}
.team.team-management .img img{
    border-radius: 0;
    width: 100%;
    height: 100%;
}
.team.team-management .texts{
    padding: 1.25rem;
}
.team.team-management .texts .member-name{
    font-size: 1.25rem;
    line-height: 110%;
}
.team.team-management .texts .member-role{
    font-size: 0.8rem;
    line-height: 110%;
}

/* Team */
.page-content .teams{
    display: flex;
}
.card-team{
    margin: 1rem 0;
}
.card-team.list-item{
    margin: 0;
}
    .card-team .team-title{
        width: 33%;
        display: flex;
        gap: 1rem;
        padding: 3rem;
    }
        .card-team .team-title h3,
        .card-team .card-txts .title{
            font-size: 1.75rem;
            color: var(--dark-blue);
            font-family: "MullerNext-Regular", Arial, Helvetica, sans-serif;
            line-height: 115%;
        }
        .card-team .team-title p{
            font-size: 1rem;
            margin: 1rem  0 0;
        }
.card-team .team{
    width: 66%;
    height: fit-content;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap:1.5rem;
    padding: 3rem 3rem 3rem 0;
    margin: 0;
}
    .card-team .member{
        width: calc((100% - 1.5rem) / 2);
        display: flex;
        flex-direction: row;
        gap: 0;
        align-items: center;
    }
        .card-team .member .img{
            border-radius: 2rem;
            width: 4rem;
            height: 4rem
        }
            .card-team .member .img img{
                border-radius: 2rem;
                width: 4rem;
                height: 4rem
            }


/* Jobs Widget */
section.jobs{
    background-color: var(--vivid-teal);
}
.jobs .section-title,
.jobs .section-title h3{
    color: white;
    text-align: left;
    margin: 0;
}
.jobs .widget-content h4{
    color: white;
    font-size: 3rem;
    margin: 0 0 1rem;
}
.jobs .widget-content > p{
    color: white;
}
.jobs .list{
    flex-direction: column;
}



/* FOOTER - Help */

.posts.help .grid{
    gap: 2rem;
}

.posts.help .card{
    background: none;
    width: calc((100% - 4rem)/3);
}
    .posts.help .card:hover{
        box-shadow: none;
    }
.posts.help .card .card-txts{
    display: block;
    padding: 0;
}
    .posts.help .card .post-icon {
        font-size: 4rem;
        color: var(--pale-blue);
        float: left;
        width: 5.5rem;
    }
    .posts.help .card h2.title{
        font-size: 1.5rem;
        float: left;
        width: calc(100% - 5.5rem);
    }
    .posts.help .card .card-more{
        margin: 1rem 0 0 0;
        padding: 0 0 1rem 0;
        float: right;
        width: calc(100% - 5.5rem);
    }
    .posts.help .card .card-more div{
        border: 0;
        margin-left: -1rem;
    }
    .posts.help .card:hover .card-more div{
        margin: 0;
    }



/* TEAM */

/* Subteam */
.subteam.widget{
    margin-top: -5rem;
}
.page-header.subteam{
    background-color: white;
}
.page-header.subteam .hor-grad{
    background: none;
}
    .page-header.subteam .event-head{
        height: 100%;
        vertical-align: middle;
        padding: 0 0 10rem;
        margin: -2rem 0 0;
    }
        .page-header.subteam .page-title{
            z-index: 10;
            width: 55%;
            padding: 4rem 0 0;
            position: relative;
            margin-top: -4rem;
        }
            .page-header.subteam .page-title h1{
                font-size: 2rem;
                letter-spacing: 0.5px;
                position: relative;
                padding-left: 4rem;
                margin-top: -1rem;
                text-transform: none;
                color: white;
            }
            .page-header.subteam .page-title h1::before {
                content: none;
            }
                .page-header.subteam .page-title img {
                    position: absolute;
                    top: 1rem;
                    left: 0rem;
                    width: 7rem;
                    z-index: 50;
                    filter: invert(1) saturate(0) brightness(10);
                }

.subteam .page-desc{
    width: 60%;
}
    .subteam .page-desc p{
        color: var(--dark-blue);
        opacity: 0.8;
    }
.page-header.subteam .main-img{
    position: absolute;
    z-index: 5;
    top: 0;
    right: 0;
    object-fit: cover;
    width: 60vw;
    height: 70vh;
    min-height: 540px;
}
.page-header.subteam::before{
    content: '';
    z-index: 10;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    background: linear-gradient(to bottom, rgba(19, 47, 85, 1) 0%, rgba(19, 47, 85, 0) 100%);
}
.page-header.subteam .container::before{
    content: '';
    z-index: 9;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0rem;
}

/* Orchestra Tabs */
.subteam-groups{
    max-width: 900px;
    margin: 0 auto;
    display: flex;
}
    .subteam-groups .tab{
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
        width: 30rem;
        height: auto;
    }
        .subteam-groups .tab button {
            cursor: pointer;
            padding: 0.75rem 1rem;
            transition: 0.3s;
            background: var(--light-gray);
            color: var(--dark-blue);
            font-size: 1.25rem;
            text-align: left;
        }
            .tab.team-tab button:hover {
                background-color: #ddd;
            }
            .tab.team-tab button.active {
                background-color:white;
            }
.tab-container{
    background: white;
    padding: 1rem;
    width: 100%;
}
    .tabcontent {
        display: none;
        padding: 1.5rem;
        width: 100%;
    }
        .tabcontent .team{
            display: flex;
            flex-direction: column;
            gap:1rem;
            flex-wrap: nowrap;
            width: 100%;
        }
            .tabcontent .team .member{
                width: 100%;
            }




.subteam .team.team-large{
    display: flex;
    flex-direction: row;
    gap:1rem;
    margin: 0;
    flex-wrap: wrap;
    justify-content: center;
}
.subteam .team-large .member{
    width: calc(100% - 3rem);
}
    .subteam .team-large .img{
        width: 50%;
        height: 100%;
    }
    .subteam .team-large .member .member-name{
        font-size: 1.75rem;
        color: var(--dark-blue);
        max-width: none;
    }
    .subteam .team.team-management .texts .member-role{
        margin-top: 0;
    }
    .subteam .team-large .member .texts{
        gap:1rem;
        display: flex;
        flex-direction: column;
        width: 50%;
    }
        .subteam .team-large .texts p{
            height: 5.6rem;
            overflow: hidden;
            line-height: 135%;
        }

/* Subteam Rich */
.page-header.subteam-rich{
    background: white;
    min-height: 75vh;
    background-repeat: no-repeat;
    background-size: 100vw auto;
}
.subteam-rich .event-head nav{
    z-index: 50;
    margin: 4rem 0 0 3.5rem;
}
.page-header.subteam-rich .page-title h1{
    font-size: 4rem;
}
.subteam-rich .page-title h2{
    font-size: 2rem;
    margin: 0.5rem 0 0 4rem;
    color:var(--light-gray);
}
.subteam-rich .team{
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap:1.5rem;
}
    .subteam-rich .team .member{
        width: calc((100% - 3rem)/3);
    }


/* Member Details */
.post-details.member-details .container{
    width: 1200px;
}
.member-details .post-content{
    display: flex;
}
    .member-details .post-content > .col:first-of-type{
        width: calc(100% - 25rem);
    }
        .member-details .post-content h1{
            padding: 0;
            font-size: 4rem;
        }
        .member-details .post-content h3{
            letter-spacing: 0.5px;
            color: var(--pale-blue);
            text-transform: uppercase;
            margin: -1rem 0 0 0;
            font-size: 1.5rem;
            line-height: 115%;
        }
        .member-details .rich-text{
            padding: 0 6rem 4rem 0;
        }
.member-details .post-content .col{
    width: auto;
    gap:2rem;
}
.member-details .post-content .main-img{
    background-color: var(--dark-blue);
    width: 25rem;
    aspect-ratio: 2/2.5;
    padding: 0;
}
.member-details .post-content .main-img img{
    width: 25rem;
    height: 100%;
    padding: 0;
    filter: opacity(0.9);
    object-fit: cover;
}
.member-details .share{
    margin: 0 0 4rem;
}


/* CONTACTS */
.contacts .post-content .col > div{
    margin-bottom: 3rem;
    display: flex;
    gap: 0.75rem;
    flex-direction: column;
}
.contacts .post-content h2{
    margin-bottom: 0.25rem;
    color: var(--dark-blue);
}
.contacts-list{
    border-left: 1px solid var(--pale-blue);
    padding: 0 0 0 3rem;
    margin: 2rem 0 0 3rem;
}
.contact-item {
    font-size: 1rem;
}
    .contact-item a{
        color: var(--dark-blue);
        text-decoration: none;
    }
        .contact-item a:hover{
            color: var(--dark-purple);
            text-decoration: underline;
        }
    .contact-item i{
        display: inline-block;
        width: 18px;
        height: 18px;
        text-align: center;
        margin-right: 0.5rem;
    }
    .contact-item.phone-number span{
        font-size: 1.15rem;
    }



form .form-row{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
    form .form-row .error-msg{
        display: none;
    }
form .form-row.error input,
form .form-row.error textarea{
    border-color: var(--vivid-salmon);
    margin-bottom: 0;
}
form .form-row.error label{
    color: var(--vivid-salmon);
}
form .form-row.error .error-msg{
    font-size: 1rem;
    color: var(--vivid-salmon);
    display: block;
    margin-bottom: 1rem;
}
.success-msg{
    font-size: 1.25rem;
    text-align: left;
    line-height: 155%;
    border: 1px solid var(--vivid-green);
    padding: 1rem;
    color: var(--vivid-green);
}

form .send-button{
    padding: 0.75rem 1rem;
    background-color: var(--pale-blue);
    text-decoration: none;
    color: white;
    font-family: 'MullerNext-Medium';
    font-size: 1.25rem;
    transition: all 0.2s ease-in;
    cursor: pointer;
}
form .send-button:hover{
    background-color: var(--dark-blue);
}
form .form-help-text{
    margin: 0 !important;
    text-align: left;
}

/* FOOTER -------------------------------------------------------------------------------- */
.totop{
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    color: var(--dark-blue);
    font-size: 2rem;
    background-color: white;
    padding: 0.2rem;
    border-radius: 2rem;
    transition: all 0.2s ease-in;
    z-index: 10000;
}
    .totop:hover{
        transform: translateY(-0.5rem);
    }
footer {
    color: rgba(256,256,256,0.6);
    font-size: 0.75rem;
}
footer .container{
    border: 0;
}
footer .widget-title{
    color: white;
    margin-bottom: 1rem;
}
    footer .widget-title h3{
        font-size: 1.5rem;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-weight: bold;
        text-align: center;
    }
    footer .row{
        grid-column-gap: 3rem;
    }
    footer .col{
        grid-row-gap: 0.75rem;
    }
    footer h4{
        text-transform: uppercase;
        font-size: 1rem;
        line-height: 120%;
        margin:0 0 1rem 0;
        padding: 0;
      }
    footer .visible-link span{
        text-decoration: underline;
    }
    footer a.footer-link-small,
    footer .footer-text-small{
        text-decoration: none;
        line-height: 130%;
        text-wrap: nowrap;
        color: rgba(256, 256, 256, 0.8);
        font-size: 0.9rem;
    }

        footer a.footer-link-small:hover{
            color: rgba(256,256,256,1);
            text-decoration: underline;
        }
    footer .footer-social-link{
        color: rgba(256,256,256,0.6);
        font-size: 1.5rem;
    }
        footer .footer-social-link:hover{
            color: rgba(256,256,256,1);
        }
    footer .footer-main-logo-link img{
        opacity: 0.6;
        height: 5rem;
    }
    footer h4{
        line-height: 115%;
        color:#fff;
        margin-bottom: 0.5rem;
    }

    /* Footer - Disabled/Placeholder Link Styling */
    .footer-link-small.text-muted {
        color: #d1d1d1;
        cursor: default;
    }


/* KIDS --------------------------------------- */
.kids .container{
    border-color: rgba(256,256,256,0.33);
}
.kids main .container{
    background-color: white;
}
.kids main{
    padding-bottom: 4rem;
}
.kids .subnav,
.kids .page-header{
    background-color: var(--vivid-orange-new);
}
.kids .page-header::before{
    content: none;
}
.kids .head-gallery{
    background-color: var(--vivid-orange-new);
}
.kids .page-content{
    background-color: var(--vivid-orange-new);
}
.kids .page-content .section-title .title-container,
.kids .page-content .month{
    color:white
}
.kids .page-content .accordion-header:hover .dots::before,
.kids .page-content .accordion-header:hover .dots::after{
    background-color: var(--vivid-orange);
}
.kids .page-content .accordion-header:hover .accordeon-buttons,
.kids .page-content .active .accordeon-buttons{
    border-color: var(--vivid-orange);
}



.gospozaopera-contact-header{
    background-color: var(--vivid-orange);
}
    .gospozaopera-contact-header .container{
        padding: 1rem;
        display: flex;
        flex-direction: row;
        /* vertical-align: middle; */
        align-items: center;
    }
        .gospozaopera-contact-header h3{
            color: white;
        }
        .gospozaopera-contact-header .labels-group{
            flex-direction: row;
            gap: 3rem;
        }
            .gospozaopera-contact-header .label-group{
                gap: 0.5rem;
                margin: 0 0 0.5rem 0;
            }
                .gospozaopera-contact-header .label-group .label{
                    color: white;
                    opacity: 0.75;
                    margin: 0;
                }
                .gospozaopera-contact-header .label-group a{
                    color: white;
                }
                .gospozaopera-contact-header .label-group a i{
                    margin-right: 0.5rem;
                }


/* LOCATIONS */
.locations .card {
    align-items: center;
}
.locations .list .card-txts{
    margin: 0;
    padding: 2rem 0;
    gap: 1rem;
}
.locations .card iframe{
    margin: 1rem;
    width: 20rem;
    height: auto;
    aspect-ratio: 1 / 1;
}
.location section.map{
    background-color: white;
}
.location section.map .container{
    gap:0;
    padding-bottom: 2rem;
}
    .location section.map *{
        text-align: center;
    }
    .location section.map iframe{
        width: 100vw;
        height: 35rem;
    }
.location .head-gallery{
    background-color: white;
}

.locations .list .col.card-more{
    margin-left: 0;
}






/* Footer CONTACTS --------------------------- */

._footer_contacts{
    background-color: #486284;
}
    ._footer_contacts h4{
        color: #fff;
        text-transform: none;
        font-size: 1.25rem;
    }
    ._footer_contacts .footer-link-small{
        margin-top: 2rem;
    }

footer .contact-item a{
    color: rgba(256,256,256,0.6);
    display: flex;
    align-items: center;
}
    footer .contact-item a:hover{
        color: rgba(256,256,256,1);
    }
    footer .contact-item span{
        color:#fff;
        line-height: 130%;
    }



/* Footer TICKETS --------------------------- */

footer ._footer_tickets{
    background-color: rgb(37,53,87);
}



/* Footer SPONSORS --------------------------- */

footer ._footer_sponsors{
    background-color: #132F55;
}
    footer ._footer_sponsors .col{
        grid-row-gap:3rem;
    }
    footer ._footer_sponsors .row{
        grid-column-gap: 5rem;
    }
    footer ._footer_sponsors .flex-wrap{
        grid-column-gap: 4rem;
        grid-row-gap: 3rem;
    }
    footer ._footer_sponsors .footer-link-logo img{
        opacity: 0.6;
        transition: all 100ms ease-in;
        width: auto;
        max-width: 7rem;
        height: auto;
        max-height: 3rem;
    }
        footer ._footer_sponsors .footer-link-logo:hover img{
            opacity: 1;
        }
    ._footer_sponsors .footer-link-small{
        margin-top: 2rem;
    }



/* Footer LINKS --------------------------- */

footer ._footer_links{
    background: #1C1E2B;
    color: white;
}
    footer ._footer_links .col{
        grid-row-gap: 0.5rem;
    }
    footer ._footer_links .footer-link-small{
        text-wrap: balance;
        opacity: 1;
    }



/* Footer CAST --------------------------- */

footer ._footer_cast{
    background: #000000;
}







/* RESPONSIVE -------------------------------------------------------------- */

.mobile{
    display: none;
}

/* TVs and BIG Monitors */
@media screen and (min-width: 1920px){

}

/* Mac Pro Screens */
@media screen and (min-width: 1440px){

}

@media screen and (min-width: 1280px){
    .page-header {
        background-size: 100vw auto;
        background-position: center;
    }
    .event .event-head{
        min-height: 45vh;
    }
}

@media screen and (max-width: 1279px){
    .container{
        width: calc(100% - 4rem) !important;
    }
    header .home-link{
        margin-right: 1rem;
    }
        header .home-link,
        header .home-link a{
            width: 8rem;
        }
    header .head-icons{
        margin: -0.25rem 0 0;
    }
    header nav{
        grid-column-gap: 0.25rem;
    }
    nav a{
        padding: 0.5rem;
        text-wrap: nowrap;
    }

    .subnav{
        padding: 0;
    }
        .subnav .container{
            padding: 0.5rem 1.5rem !important;
        }
            .subnav nav{
                margin: 0 -1rem;
            }
                .subnav .nav-item.small{
                    padding: 0.5rem;
                    justify-content: center;
                }
                .subnav .nav-item.small.active{
                    margin: 0 0 -1rem;
                }
                .subteam-rich .page-title h2{
                    text-wrap: nowrap;
                }
                .subnav .nav-item.small span{
                    line-height: 115%;
                }

    /* homepage */
    .welcome-events .event .title{
        max-width: calc((100vw - 15rem)/3) !important;
    }

    /* Team */
    .widget-event-details,
    .widget-creatives,
    .widget-cast{
        padding: 0.5rem 0 0.5rem;
    }
    .widget.subteam .container{
        padding: 0rem 0;
    }
    .card-team .member{
        width: calc((100% - 1.5rem) / 2);
    }
    .grid .list-item.card-team {
        width: calc((100% - 1.5rem) / 2);
    }
        .card-team .team-title p{
            margin: 0 0 1rem;
        }
    .page-header.subteam-rich{
        min-height: 60vh;
        background-size: cover;
    }

    /* performance */
        .widget-cast .team.main-members .member{
            width: calc((100% - 10rem) / 6);
        }

    .welcome-nav-item{
        width: calc((100% - 12rem)/3);
        height: 5rem;
    }
    .welcome-nav-item a.main{
        font-size: 0.9rem;
    }
    .welcome-nav-item a{
        font-size: 0.75rem;
    }
    .widget-cast .team.departments .member .img{
        height: auto;
    }
    .widget-location .texts{
        padding: 1.5rem 2rem 1.5rem 0.5rem;
    }
    .widget-location .texts .location-title{
        font-size: 1.5rem;
    }

    .tickets-header .sellers-list .label{
        margin-right: 0.5rem;
        font-size: 0.75rem;
    }
        .tickets-header .sellers-list span,
        .tickets-header .cashiers span{
            font-size: 0.75rem;
        }
        .tickets-header .sellers-list a{
            margin-right: 0.5rem;
        }

    .card .alert{
        font-size: 0.75rem;
    }

    .tag{
        padding: 0.5rem 0.6rem 0.35rem;
        font-size: 0.75rem;
    }
    .tag-special{
        padding: 0.5rem 0;
    }
    .type.tag{
        max-width: 18rem;
    }
    .list .card-txts{
        padding: 3rem 0 2rem 0rem;
    }
    .card-txts{
        gap: 1rem;
    }
    .event .event-head{
        min-height: 25vh;
        width: 55% !important;
    }
        .event .author{
            margin: 0 0 -0.5rem 0;
        }
    .card-txts .title{
        font-size: 1.5rem;
    }
    .grid .card {
        width: calc((100% - 2rem) / 3);
    }

    /* PROGRAM and Tickets */
    .page-title h1.no-deco{
        font-size: 2.5rem;
    }
    .program .accordion-header a{
        right: 10rem;
    }
    .program .accordion-header,
    .program .accordion-header:hover{
        padding: 1.5rem;
        min-height: 12rem;
    }
        .program .when{
            padding-right: 1.5rem;
            width: 21rem;
        }
            .program .when .day{
                font-size: 1rem;
            }
            .program .when .date{
                font-size: 2.75rem;
            }
            .program .when .time{
                font-size: 1.5rem;
            }
        .program .accordion-header:hover .main-img,
        .program .active .main-img{
            right: 10.25rem;
        }
        .program .tags{
            width: auto;
            left: 1.5rem;
        }
        .program .card-txts .author{
            font-size: 0.8rem;
        }
        .program .card-txts .title{
            font-size: 1.75rem;
        }
            .program .accordion-header .card-txts .title{
                max-width: 22rem;
            }
            .program .accordion-header:hover .card-txts .title,
            .program .active .card-txts .title{
                max-width: none;
            }
        .program .dots::before{
            top: -1.5rem;
        }
        .program .dots::before,
        .program .dots::after{
            right: 7.75rem;
        }
        .program .accordeon-buttons{
            padding-left: 1.5rem;
        }
            .program .details-button,
            .program .active .details-button,
            .program .accordion-header:hover .details-button,
            .program .tickets-button,
            .program .alert{
                padding: 0.5rem;
                width: 7rem;
            }
            .program .details-button{
                opacity: 1;
                font-size: 0.8rem;
            }
            .program .active .sellers{
                width: 6rem;
            }
                .program .active .sellers-list .label{
                    font-size: 0.65rem;
                }
                .program .active .sellers-list .cashiers{
                    padding: 0.25rem 0 0;
                }
                .program .active .sellers-list .cashiers span{
                    font-size: 0.65rem;
                }
                .program .active .sellers-list .cashiers i{
                    display: none;
                }


    .card .location{
        width: 8rem;
        font-size: 0.65rem;
    }
        .card .location i{
            font-size: 1rem;
        }
    .program .list .card .card-txts{
        padding: 4.5rem 0 0 1.5rem;
        width: 100%;
    }
    .program .list .active .card-txts{
        width: 100%;
    }
    .program .accordion-header:hover .card-txts,
    .program .list .active .card-txts{
        padding: 2rem 10rem 0rem 0;
    }
    .program.program-tickets .accordion-header:hover .tags,
    .program.program-tickets .active .accordion-header .tags,
    .program.program-tickets .accordion-header:hover .card-txts,
    .program.program-tickets .active .accordion-header .card-txts{
        left: 0rem;
        padding: 0rem 12rem 0 0;
        width:100%;
        max-width: 40rem;
    }
    .program .accordion-header:hover .main-img img,
    .program .active .main-img img{
        width: 25rem;
    }

    .locations .list .card-txts{
        padding: 0 2rem 0 0rem;
    }
    .card .map{
        display: none;
    }

    .accordion-body{
        padding: 1.5rem;
        width: calc(100% - 3rem);
    }

    .event-dates .accordion-body{
        width: calc(100% - 1rem);
    }
        .event-dates .accordion-body .team .member h5{
            font-size: 1.15rem;
        }
        .event-dates .accordion-body .team .member h6{
            font-size: 0.65rem;
        }
        .event-dates .card .details-button{
            padding: 0.5rem;
            font-size: 0.9rem;
        }
            .event-dates .accordion-item button i{
                margin: 0 0 0 0.15rem;
            }
        .event-dates .accordion-item .accordion-header{
            gap: 1rem;
        }
        .event-dates .accordion-item .info{
            width: calc(100% - 44rem);
        }
        .event-dates .accordion-item .sellers-list{
            flex-wrap: wrap;
            justify-content: center;
        }

    .card .time{
        font-size: 0.75rem;
        width: 6rem;
    }
    .widget-event-details .widget-content{
        gap: 3rem;
    }
    .widget-creatives .team .member{
        width: calc((100% - 7rem) / 7);
    }


    .page-header{
        background-size: 100vw;
        background-position: top center;
    }
            .page-header.event .page-title,
            .page-header.event .page-author,
            .page-header .page-desc{
                width: 100%;
            }
            .page-header.event .page-title h1{
                font-size: 2.5rem;
            }
            .page-header.event .page-author h2{
                font-size: 1rem;
            }
            .page-header .page-desc p{
                font-size: 1rem;
            }


    /* performances */
    .repertoare .grid .event.card .card-txts .title{
        font-size: 1.75rem;
        max-width: calc((100vw - 9rem)/2) !important;
        text-wrap: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        overflow-wrap: unset !important;
    }
    .repertoare .col.page-desc{
        padding: 0;
    }
    .repertoare .grid .card{
        width: calc((100% - 1rem) /2);
    }
    .repertoare .list .card{
        display: block;
        width: 100% !important;
    }
    .repertoare .list .card{
        width: calc((100% - 1rem)/2);
    }
        .repertoare .list .card .card-img{
            float: left;
            width: 50%;
        }
        .repertoare .list .card .card-txts,
        .repertoare .list .card .card-desc{
            float: left;
            padding: 1.5rem;
            width: calc(50% - 3rem);
        }
        .repertoare .list .card .card-desc{
            padding-top: 0;
        }


    /* operaopen */
    .platform.platform-operaopen .page-header{
        background-size: auto 100vh;
    }
    .platform-operaopen .active .accordion-header .accordeon-buttons{
        width: 13rem;
    }

    /* related posts */
    .type.tag{
        max-width: 15rem;
    }

    /* help */
    .posts.help .card .post-icon{
        font-size: 4rem;
    }

    /* contacts */
    .contacts form{
        min-width: 320px;
        width: 100%;
    }
    .contacts .post-content .row:nth-of-type(2){
        width: 100%;
    }
    .contacts .post-content .col > div{
        padding: 0rem 2rem 0 0;
    }
    .contacts .contacts-list{
        padding: 0 0 0 2rem;
    }


    footer #contact > div > .col > .row,
    footer #tickets > div > .col > .row,
    .team.team-management{
        flex-wrap: wrap;
    }
        footer #contact div .col > .row > .col,
        footer #tickets div .col > .row > .col{
            padding: 0;
            margin: 0 0 3rem;
            gap: 1.25em;
            width: calc((100% - 6rem) / 3);
            flex-direction: column;
        }
            footer #contact > div > .col > .row > .col > .row,
            footer #tickets > div > .col > .row > .col > .row{
                width: fit-content;
                margin-bottom: 0;
            }
    .contact-item.phone-number span{
        text-wrap: nowrap;
    }
    .widget-title h5{
        text-align: center;
    }
    footer ._footer_cast .row .col .row{
        flex-wrap: wrap;
        column-gap: 2rem;
        row-gap: 0.75rem;
    }
}

@media screen and (max-width: 1023px){

    .container{
        padding: 3rem 1.5rem !important;
        width: calc(100% - 3rem) !important;
    }
    .container.tiny,
    header .container{
        padding: 0.5rem 1.5rem !important;
    }

    .mobile{
        display: inherit;
    }
    .mobile-small{
        display: none;
    }
    .desktop{
        display: none;
    }
    .hide{
        display: none;
    }
    header .container > .row{
       margin: 0 -1rem;
       width: calc(100% + 2rem);
    }
    header .container > .row > .col:first-of-type{
        order: 2;
    }
    header .container > .row > .col:last-of-type{
        display: flex;
        flex-direction: row;
        order: 3;
    }
    header.welcome .container > .row > .col:last-of-type{
        flex-direction: column;
    }
    header .home-link{
        margin: 0 0.5rem;
        width: 6rem;
        order: 1;
    }
    header .home-link a{
        background-size: 100%;
        width: 6rem;
    }
    header nav{
        margin: 0;
        gap: 0rem;
        width: 100%;
        justify-content: flex-end;
    }
    header nav .menu a{
        padding: 0;
    }
    .nav-item {
        padding: 0.5rem;
        height: auto;
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
        text-align: center;
        text-wrap: auto;
        min-width: 3rem;
        line-height: 1rem;
    }
        .nav-item span{
            font-size: 0.75rem;
            line-height: 1rem;
        }
        .nav-item i{
            margin: 0;
            display: none;
        }
        .nav-item.small{
            padding: 0.5rem;
        }
        .nav-item.small.active{
            padding: 0.5rem;
            border: 0;
            margin: 0;
        }
        .hor-end:first-of-type{
            order: 2;
        }
        header .hor-end:last-of-type{
            order: 1;
            margin-right: 2rem;
        }
        .head-icons {
            margin: 0;
        }
            .head-icons a.lang-change{
                margin: 0;
                padding: 0.5rem;
                font-size: 1rem;
            }
            .head-icons a.lang-change span{
                display: none;
            }

    .nav-item.menu{
        position: relative;
    }
    .nav-item.menu.open{
        background-color: var(--dark-blue);
    }
        .nav-item.menu.open > a{
            color: white;
        }
    .dropdown-menu{
        position: absolute;
        background: white;
        padding: 1rem;
        display: flex;
        right: 0;
        flex-direction: column;
        gap: 0.5rem;
        border: 1px solid var(--dark-blue);
        top: 1.75rem;
    }

    .program .sellers{
        margin: 0 -0.5rem;
        width: auto;
    }

    .tickets-header .sellers-list{
        flex-wrap: nowrap;
    }
    .tickets-header .sellers-list .seller-item{
        text-align: center;
        margin: 0 0.5rem 0;
        width: 6rem;
    }
        .tickets-header .sellers-list > span{
            text-wrap: wrap;
            text-align: end;
            line-height: 100%;
            text-wrap-style: balance;
        }
            .tickets-header .sellers-list > span.label{
                text-wrap: nowrap;
            }
        .tickets-header .sellers-list .seller-item.cashiers{
            width: 8rem;
            margin: 0;
        }
            .tickets-header .sellers .sellers-list .seller-item.cashiers span{
                font-size: 0.75rem !important;
            }



    .subnav nav{
        grid-column-gap:0rem;
    }
        .subnav .nav-item.small span{
            font-size: 0.6rem;
        }
    .sticky-header nav .nav-item.small{
        padding: 0.3rem 0.6rem;
        font-size: 0.6rem;
    }


    .welcome img{
        height: 6rem;
        margin:0 2rem;
    }
    .welcome span{
        font-size: 1.75rem;
    }
    .welcome h1{
        font-size: 2rem;
    }
    .welcome-nav{
        margin: -3rem 0 0;
    }
        .welcome-nav .container > .row{
            flex-direction: column;
        }
            .welcome-nav-items{
                gap: 0.5rem;
            }
            .welcome-nav-item{
                width: calc((100vw - 13rem) / 3);
                height: 6.5rem;
                padding: 1.5rem;
            }
            .welcome-nav-item a{
                font-size: 0.9rem;
            }
            .welcome-nav-item.operaopen .logo{
                margin-top: 1rem;
            }
                .welcome-nav-item .logo img{
                    height: 3.5rem;
                }
    .banner{
        margin-top: 0.5rem;
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: row;
        gap: 0.5rem;
    }
    .banner img{
        opacity: 1 !important;
        position: relative !important;
        width: calc((100% - 1.5rem)/3);
    }


    /* Footer Help */
    .posts.help .grid{
        gap: 2rem;
    }
        .posts.help .card{
            width: calc((100% - 2rem)/2);
        }

    .grid .card .card-txts{
        padding: 1.5rem;
    }


    .tag {
        font-size: 0.75rem;
        padding: 0.4rem 0.8rem 0.3rem;
    }

    .event-head{
        min-height: 24rem;
    }
    .page-header.subteam-rich .page-title h1{
        font-size: 3rem;
    }
    .subteam-rich .page-title h2 {
        font-size: 1.5rem;
    }
    .post-details .post-content h1{
        padding: 0;
    }
    .post-details .post-content .main-img{
        width: 100%;
    }
    .rich-text li, .rich-text p{
        margin: 0 auto 1rem;
        padding: 0;
    }
    .post .grid .card-img,
    .post .grid .card-img .main-img{
        height: auto;
    }

    /* TEAM */
    .page-header.subteam-rich .event-head{
        min-height: unset;
        margin: 2rem 0 0 0;
    }
    .page-header.subteam-rich {
        min-height: 50vh;
    }
    .subteam .team-large.team.team-management .member {
        width: calc((100% - 1rem) / 2) !important;
        flex-direction: column;
        max-width: 20rem;
    }
        .subteam .team-large.team-management .img{
            width: 100%;
            height: auto;
            margin: 0;
        }
        .subteam .team.team-management .texts{
            width: calc(100% - 3rem);
            padding: 1.5rem;
            text-align: left;
        }
            .subteam .team.team-management .texts p{
                font-size: 1rem;
                line-height: 135%;
                margin-bottom: 1rem;
            }
            .subteam .team.team-management .texts .member-name{
                font-size: 1.5rem;
                max-width: none;
            }
            .subteam .team.team-management .texts .member-role{
                font-size: 0.75rem;
                margin-bottom: 1rem;
            }

    .team.team-management .texts{
        padding: 1rem;
    }
    .team.team-management .texts .team-name{
        font-size: 1.25rem;
    }
    .card-team .team{
        padding: 1.5rem 1.5rem 1.5rem 0;
    }
    .card-team .team-title{
        padding: 1.5rem 0 1.5rem 1.5rem;
    }

    .subteam-rich .team .member{
        width: calc((100% - 2rem) / 2);
    }

    .subteam-groups-nav button span{
        font-size: 1rem;
    }

    /* member page */
    .member-details .post-content > .col:first-of-type{
        width: calc(100% - 27rem);
        padding-right: 2rem;
    }
        .member-details .post-content h1{
            font-size: 3rem;
        }
        .member-details .post-content h3{
            font-size: 1rem;
        }
        .member-details .rich-text{
            padding: 0 1rem 0 0;
        }

    /* welcome */
    .welcome-events .card{
        padding-bottom: 4rem;
    }
    .welcome-events .grid .card .card-more{
        margin: 0;
        left: 1.5rem;
        bottom: 1rem;
    }
    .welcome-events .card .time,
    .welcome-events .card .location{
        opacity: 1;
    }
    .welcome-events .card .location{
        max-width: calc(100vw - 20rem);
        width: 100%;
    }
    .welcome-events .card .location span{
        font-size: 0.8rem;
    }


    .event .title{
        max-width: none;
        overflow-wrap: anywhere;
    }
    .event.page-header {
        background-size: 100vh auto;
        background-position: top center;
        text-align: left;
    }
    .event.page-header .container{
        padding: 2rem 1rem !important;
    }
    .page-header.event .page-title h1{
        font-size: 2rem;
    }
    .page-header.event .page-author h2{
        font-size: 0.9rem;
    }
    .page-header.event .page-desc p{
        font-size: 0.9rem;
    }
    .page-header.event .tags{
        margin-bottom: 1rem;
    }

    .event-dates .accordion-item .accordion-header{
        gap: 0.5rem;
    }
    .event-dates .accordion-item.head{
        display: none;
    }
        .event-dates .date{
            order: 1;
            margin-top: -2.5rem;
        }
            .event-dates .accordion-header .new-date{
                margin-bottom: 0.25rem;
                font-size: 0.5rem;
            }
            .event-dates .accordion-header .new-date i{
                display: none;
            }
            .event-dates .accordion-header .new-date span{
                text-wrap: nowrap;
            }
        .event-dates .time{
            width: 6rem;
            order: 2;
            margin: 2.5rem 0 0 -6.5rem;
        }
        .event-dates .accordion-item .tags{
            order: 3;
            width: 12rem;
            padding: 0 1rem;
        }
        .event-dates .location{
            width: 6rem;
            order: 4;
        }
        .event-dates .accordion-item .accordion-body .team .member{
            width: calc((100% - 6rem)/3);
        }
        .event-dates .accordion-item .info{
            order: 5;
            width: calc(100% - 37rem);
        }
            .event-dates .status{
                font-size: 0.7rem;
                padding: 0.25rem 0;
            }
                .sellers-list{
                    flex-wrap: wrap;
                    align-items: center;
                }
                .sellers .alert{
                    font-size: 0.75rem;
                }
                .sellers-list .seller-item{
                    width: 4rem;
                    margin: 0 auto;
                }
                .sellers-list .seller-item.cashiers{
                    width: fit-content;
                    display: flex;
                    align-items: center;
                    gap: 0rem;
                }
        .event-dates .accordeon-button{
            order: 6;
        }

    .accordion-item .seller-item img{
        height: 1rem;
    }

    .card .new-date{
        font-size: 0.5rem;
        gap: 0.5rem;
    }
        .card .new-date i{
            font-size: 0.9rem;
        }
        .card .new-date span{
            text-wrap: wrap;
            line-height: 110%;
            margin: 0.25rem 0;
        }
    .card .location{
        max-width: 6rem;
    }

    .rich-text li,
    .rich-text p{
        font-size: 1rem;
        max-width: 620px;
    }
    .widget-cast .team.departments{
        gap: 2rem;
    }
    .widget-location .texts{
        padding: 2rem 2rem 2rem 0.5rem;
    }

    .widget-creatives .team .member{
        width: calc((100% - 4rem) / 5);
    }

    .welcome-events .grid .card{
        width: calc(50% - 0.5rem);
    }
    .post .grid .card{
        width: calc(50% - 0.5rem);
    }
    .grid .card {
        width: calc(50% - 0.5rem);
    }
            .grid .card-txts .title{
                font-size: 1.75rem;
                max-width: calc(50vw - 5rem) !important;
            }
    .accordion-body > .row{
        padding:1rem;
        width: calc(100% - 2rem);
    }

    /* ticket */
    .program .accordion-header,
    .program .accordion-header:hover {
        padding: 1.5rem;
        min-height: 13rem;
    }

        .program .when{
            width: 5.5rem;
        }
            .program .when .date{
                font-size: 2rem;
            }
            .program .when .time {
                font-size: 1.25rem;
            }
            .program .when .day {
                font-size: 0.75rem;
            }
        .program .tags{
            left: 1rem;
        }
        .program .tags .tag{
            font-size: 0.7rem;
            padding: 0.3rem 0.5rem 0.25rem;
        }

        .program .main-img img{
            width: 100%;
            max-width: 40rem;
            min-width: 13rem;
        }

        .program.program-tickets .accordion-header:hover .tags,
        .program.program-tickets .active .accordion-header .tags,
        .program.program-tickets .active .accordion-header:hover .tags,
        .program.program-tickets .active .accordion-header .card-txts{
            padding: 0rem 12rem 0 1rem;
            max-width: 30rem;
        }
        .program.program-tickets .accordion-header:hover .card-txts,
        .program.program-tickets .active .accordion-header .card-txts{
            padding: 5rem 12rem 0 1rem;
            max-width: 30rem;
        }
        .program .accordion-header:hover .main-img,
        .program .active .main-img {
            width: 30rem;
            right: 4.25rem;
        }
        .program .list .card .card-txts{
            padding: 5rem 0 0 1rem;
        }
        .program .accordion-header .card-txts .title{
            font-size: 1.5rem;
        }
        .program .details-button,
        .program .active .details-button,
        .program .accordion-header:hover .details-button,
        .program .tickets-button,
        .program .alert{
            width: 6rem;
        }
        .program .alert span,
        .program .tickets-button{
            font-size: 0.75rem;
        }
        .program .dots::before,
        .program .dots::after {
            right: 6.75rem;
        }
        .program .event .accordion-body .team{
            gap: 1.5rem;
        }
            .program .event .accordion-body .team .member,
            .program .event .accordion-body .team.secondary .member{
                width: calc((100% - 3rem) / 2);
            }
                .program .accordion-body .member .img,
                .program .accordion-body .member .img img{
                    height: 4rem;
                    width: 4rem;
                }
                .event-dates .accordion-item .accordion-body .team .member .texts{
                    position: relative;
                }
                .program .accordion-body .team .member h5{
                    font-size: 1.15rem;
                }

                .program .accordion-body .secondary .member .img,
                .program .accordion-body .secondary .member .img img{
                    height: 2.75rem;
                    width: 2.75rem;
                }
        .program .active .sellers-list .label{
            font-size: 0.6rem;
        }
        .sellers-list .cashiers i{
                font-size: 0.75rem;
                margin-right: 0.25rem;
            }

    .program.table .widget{
        width: fit-content;
        margin: 0 auto;
    }
    .program.table .widget-content{
        width: fit-content;
    }
    .program.table .card{
        flex-wrap: wrap;
        row-gap:1rem;
    }
        .program.table .card .when{
            width: 5rem;
        }
        .program.table .list .card .location{
            width: calc(100% - 10rem);
            padding: 0;
        }
        .program.table .list .card .tags{
            width: calc (100% - 14rem);
            left: 0;
        }
        .program.table .list .card .card-txts{
            width: 100%;
        }
            .program.table .list .card .card-txts .title{
                font-size: 1.5rem;
                max-width: 100%;
            }

    .platform-operaopen .active .accordion-header .accordeon-buttons{
        width: 8.5rem;
    }
}

@media screen and (max-width: 767px){

    header nav{
        flex-wrap: wrap;
    }
    header .hor-end:last-of-type{
        margin-right: 0rem;
    }
    header .hor-end:first-of-type{
        width: 2rem;
        position: absolute;
        right: 1rem;
        top: 1rem;
    }
    .container{
        width: calc(100% - 2rem) !important;
        padding: 4rem 1rem !important;
    }
    .container.tiny{
        width: calc(100% - 0.25rem) !important;
        padding: 0.25rem 0rem 0.25rem 0.25rem!important;
    }

    .welcome img{
        height: 6rem;
        margin: 0 2rem 0 0;
    }
    .welcome span{
        font-size: 1.5rem;
    }
    .welcome h1{
        font-size: 2rem;
    }

    header.welcome .container{
        position: relative;
    }
    header.welcome .service-links{
        position: absolute;
        top: -1rem;
        right: 2rem;
        justify-content: normal;
        width: 2rem;
        height: 2rem;
    }

        .welcome-nav .container > .row{
            flex-direction: column;
        }
            .welcome-nav-items{
                gap: 0.25rem;

            }
            .welcome-nav-item{
                width: calc((100vw - 8.5rem) / 3);
                padding: 1rem;
                height: auto;
                align-self: stretch;
                justify-content: flex-start;
            }
            .welcome-nav-item.operaopen{
                justify-content: center;
            }
            .welcome-nav-item .subs{
                flex-wrap: nowrap;
                flex-direction: column;
            }
                .welcome-nav-item .subs li{
                    margin: 0 0 0.35rem 0.75rem;
                }
                    .welcome-nav-item .subs li a{
                        font-size: 0.8rem;
                    }
            .welcome-nav-item .subs li::before{

            }
            .welcome-nav-item h4,
            .welcome-nav-item a.main{
                font-size: 0.8rem;
                margin-top: 0.25rem;
            }
            .welcome-nav-item.operaopen .logo{
                margin-top: 1rem;
            }
                .welcome-nav-item .logo img{
                    height: 4.5rem;
                }
    .banner{
        margin-top: 0.5rem;
        width: 100%;
    }

    .welcome-events .grid .card{
        width: calc(50% - 0.5rem);

    }
    .welcome-events .card .date{
        font-size: 2rem;
    }
    .welcome-events .card .location{
        font-size: 0.75rem;
        text-wrap: wrap;
    }
    .welcome-events .event .title{
        max-width: calc(50vw - 5rem) !important;
    }
    .welcome-events .grid .card .card-more{
        padding: 0;
        bottom: 1.5rem;
    }

    .col.page-title{
        padding: 0;
    }
        .page-title h1.no-deco{
            font-size: 1.75rem;
        }
    .post-content .rich-text{
        padding: 2rem 2rem 0;
    }
    .post-details .post-content h1{
        width: 100%;
    }
    .post-details .post-content .main-img{
        padding: 2rem 0 0;
    }

    /* nav */
    header .container > .row{
        flex-direction: column;
        margin: 0;
    }
    header.welcome .container > .row{
        flex-direction: row;
    }
    header .home-link{
        margin: 0;
    }
    header nav{
        justify-content: center;
    }
    header .container > .row > .col:first-of-type{
        margin-bottom: 0.25rem;
    }
    .hor-end:first-of-type{
        width: 2rem;
    }
    .subnav nav{
        flex-wrap:wrap;
        gap: 0.25rem;
    }
        .subnav .nav-item.small.active{
            margin: 0;
        }
        .subnav .nav-item.small span {
            font-size: 0.75rem;
        }

    /* news */
    .page-header.simple .col.page-title{
        width: calc(100% - 12rem);
        margin-top: -3rem;
    }
    .page-header.simple .row.ver-center{
        flex-direction: column;
        width: 100%;
    }
        .page-header.simple .row.ver-center .page-desc{
            padding: 2rem 0 0;
        }
            .page-header.simple .row.ver-center h1{
                margin-left: -5rem;
                margin-top: 3rem;
            }
            .page-header.simple .page-desc p{
                font-size: 1rem;
                text-align: left;
                padding: 0 1rem;
                margin-bottom: 1rem;
            }

    /* operaopen */
    .platform.platform-operaopen .page-header{
        background: var(--dark-purple);
        background-size: 100vw auto !important;
        background-repeat: no-repeat;
    }
    .platform-operaopen .page-header.event::before,
    .platform.platform-operaopen .hor-grad{
        background: none;
    }
    .platform-operaopen .event .event-head{
        margin: 18rem -1rem 0;
        background: var(--dark-purple);
        width: calc(100% - 4rem) !important;
        padding: 2rem 3rem 0;
    }
    .platform-operaopen h1{
        font-size: 5.5vw !important;
    }
    .platform-operaopen .widget-event-details .rich-text{
        padding: 3rem;
        width: calc(100% - 6rem);
    }
        .platform-operaopen .widget-event-details .rich-text p{
            max-width: none;
        }
    .platform-operaopen .grid .card{
    }
    .operaopen-footer .container > .row{
        flex-direction: column;
    }
    .operaopen-footer .platform-logo img{
        margin: 0 auto;
    }
    .platform-operaopen .subteam .team .member{
        width: calc((100% - 2rem) / 3);
        min-width: 10rem;
    }
        .platform-operaopen .subteam .team .member .texts .member-name{
            font-size: 1.25rem;
        }
        .platform-operaopen .subteam .team .member .texts .member-role{
            font-size: 0.65rem;
        }


    .program .details-button,
    .program .active .details-button,
    .program .accordion-header:hover .details-button,
    .program .tickets-button,
    .program .alert {
        width: 8rem;
    }
    .program .alert span,
    .program .tickets-button{
        font-size: 0.9rem;
    }
    .program .accordion-header:hover .tickets-button{
        border-color: var(--dark-blue);
        color: var(--dark-blue);
    }
    .program .accordion-header .accordeon-buttons{
        border: 0;
    }
    .tabs{
        gap:0;
    }



    /* tickets nav */
    .tickets-header .sellers-list{
        justify-content: center;
    }
        .tickets-header .sellers-list > span{
            display: none;
        }
            .tickets-header .sellers-list > span.label{
                display: inline;
                margin: 0;
                text-wrap: wrap;
                width: 4rem;
            }
    .tickets-header .sellers-list .seller-item{
        margin: 0;
        width: 5rem;
    }
            .tickets-header .sellers-list .seller-item.cashiers{
                width: 7rem;
            }
            .tickets-header .sellers .sellers-list .seller-item.cashiers span {
                text-wrap: auto;
                line-height: 100%;
                text-align: left;
            }



    /* teams */
    .page-header.subteam-rich {
        min-height: unset;
    }
    .page-header.subteam-rich .page-title{
        margin-top: -5rem;
    }
    section .section-title{
        margin: 0 auto !important;
    }
    .team.team-management .member {
        flex-direction: column;
    }
    .team.team-management .member .img{
        width: 100%;
        height: auto;
    }
    .team.team-management .texts{
        text-align: center;
    }
    .teams .card-team{
        flex-direction: column;
    }
        .teams .card-team .team-title,
        .teams .card-team .team{
            width: calc(100% - 3rem);
        }
        .teams .card-team .team{
            padding:1.5rem;
        }
    .team.team-management.team-large .member{
        flex-direction: column;
        width: calc((100% - 1rem)/2);
    }
        .team.team-management.team-large .member .texts{
            width: calc(100% - 3rem);
            padding: 1.5rem;
        }
        .team.team-management.team-large .texts .member-role{
            margin: -0.75rem 0 1rem;
        }
        .team.team-management.team-large .member .texts p{
            display: none;
        }

    .subteam-groups .tab{
        width: 20rem;
    }
        .subteam-groups .tab button{
            font-size: 1.25rem;
        }

    .subteam-rich .team .member{
        width: calc((100% - 1.5rem) / 2);
    }
        .team .member h5{
            max-width: none;
            font-size: 1.1rem;
        }
        .subteam-groups-content{
            padding: 1.5rem;
            width: 66%;
        }
        .subteam-groups-content p,
        .subteam-groups-content > h5{
            display: none;
        }
        .subteam-groups-content .team{
            flex-wrap: nowrap;
            flex-direction: column;
            margin: 0;
        }
            .subteam-groups-content .team .member{
                width: 100%;
            }
        .subteam-groups-nav button{
            padding: 0.5rem;
            align-items: center;
        }
            .subteam-groups-nav button span{
                font-size: 0.75rem;
                text-wrap: auto;
                line-height: 115%;
            }
                .subteam-groups-nav button.active i{
                    margin: 0;
                }
    .team-simple{
        gap: 2rem;
    }
    .team-simple .member{
        width: calc((100% - 4rem)/2);
        text-align: center;
    }
        .team-simple .member .texts .member-name{
            font-size: 1.25rem;
        }
        .team-simple .member .texts .member-role{
            font-size: 0.75rem;
            line-height: 135%;
        }

    /* member page */
    .member-details .post-content{
        flex-direction: column;
    }
    .member-details .post-content > .col:first-of-type{
        width: 100%;
        padding: 0;
        text-align: center;
    }
        .member-details .post-content h1{
            font-size: 3rem;
        }
        .member-details .post-content h3{
            font-size: 1rem;
        }
        .member-details .rich-text{
            padding: 0;
            margin: 0 auto;
        }
            .member-details .rich-text p{
                width: 100%;
                max-width: 600px;
                text-align: left;
                margin-bottom: 1rem;
            }
        .post-details.member-details .main-img{
            padding: 0;
            margin: 3rem auto 1rem;
        }
        .member-details  .labels-group{
            text-align: center;
        }



    /* jobs */
    .jobs .card-img{
        display: none;
    }
        .jobs .list .card-txts{
            padding: 1.5rem;
        }

    /* Related performances*/
    .grid .card-img {
        height: auto;
    }

    /* Related post Widget */
    .posts .list{
        flex-wrap: wrap;
        flex-direction: row;
        gap: 1rem;
    }
        .posts .list .card{
            flex-direction: column;
            width: calc(50% - 0.5rem);
            padding-bottom: 1.5rem;
        }
        .posts .list .card-txts{
            padding: 1.5rem;
            margin: 0;
            width: calc(100% - 3rem);
        }
        .posts .list .tag{
            position: relative;
            top: auto;
            max-width: none;
            margin-bottom: 1rem;
        }
        .posts .list .card-desc{
            padding: 0 1.5rem;
            align-self: auto;
            gap: none;
            width: fit-content;
        }
        .posts .card-txts .title{
            font-size: 1.25rem;
            width: 100%;
        }
        .posts .card-img{
            height: auto;
        }

    .program .accordion-header a{
        right: 0rem;
        bottom: 4rem;
    }

    .program .accordion-header{
        min-height: none;
        flex-direction: row;
        gap: 1rem;
        flex-wrap: wrap;
        padding: 1rem;
    }
        .program .when{
            padding-right: 0;
            width: 100%;
            gap: 1rem;
            flex-direction: row;
            align-items: center;
            z-index: 20;
            flex-wrap: wrap;
        }
            .program .new-date{
                order: 2;
                padding: 0.125rem 0.35rem;
                font-size: 0.65rem;
                gap: 0.25rem;
            }
            .program .when .day{
                font-size: 1rem;
                order: 3;
                width: auto;
            }
            .program .when .date{
                font-size: 2rem;
                order: 1;
                width: auto;
            }
            .program .when .time{
                font-size: 1rem;
                order: 4;
                width: auto;
            }
            .program .card .location{
                width: 6rem;
                font-size: 0.75rem;
                position: relative;
                order: 5;
                padding: 0;
                margin: 0;
                bottom: auto;
                width: auto;
                max-width: none;
            }
                .program .card .location i{
                    font-size: 0.75rem;
                }
            .program .accordion-header:hover .main-img,
            .program .list .card .accordion-header:hover .card-txts,
            .program .list .card .accordion-header .main-img,
            .program .list .card .accordion-header .card-txts {
                width: calc((100vw - 6rem) / 2) !important;
                position: relative;
            }
            .program .list .card .card-txts,
            .program .list .card .accordion-header:hover .card-txts{
                padding: 0;
                gap: 1rem;
                align-content: center;
                margin-left: 1rem;
            }
            .program .accordion-header .card-txts .title{
                font-size: 1.25rem;
            }
            .program .card-txts .author{
                font-size: 0.9rem;
            }
            .program .tags{
                position: relative;
                margin: 0 0 1rem;
                padding: 0;
                left: 0;
                width: 100%;
            }
            .program .tags .tag span{
                text-wrap: wrap;
            }
        .program .accordion-header:hover .details-button,
        .program .active .details-button{
            color: white;
            background: var(--dark-blue);
        }
        .program .card .accordion-header:hover{
            background-color: inherit;
            padding: 1rem;
        }
        .program.program-tickets .accordion-header:hover .when,
        .program.program-tickets .accordion-header:hover .card-txts *{
            max-width: none;
        }
        .program.program-tickets .accordion-header:hover .when *,
        .program.program-tickets .accordion-header:hover .card-txts .title,
        .program.program-tickets .accordion-header:hover .card-txts .author{
            color: var(--dark-blue);
        }

        .program.program-tickets .accordion-header:hover .card-txts .tags{
            padding: 0;
        }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-opera,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-opera{
                background: var(--dark-blue);
                border-color: var(--dark-blue);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-musical,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-musical{
                background: var(--vivid-salmon);
                border-color: var(--vivid-salmon);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-ballet,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-ballet{
                background: var(--vivid-blue);
                border-color: var(--vivid-blue) ;
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-dance,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-dance{
                background: var(--vivid-purple);
                border-color: var(--vivid-purple);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-symconcert,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-symconcert{
                background: var(--dark-teal);
                border-color: var(--dark-teal);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-concert,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-concert{
                background: var(--black);
                border-color: var(--black);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-camconcert,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-camconcert{
                background: var(--vivid-teal);
                border-color: var(--vivid-teal);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-choir,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-choir
            {
                background: var(--vivid-green);
                border-color: var(--vivid-green);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-operetta,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-operetta{
                background: var(--vivid-pink);
                border-color: var(--vivid-pink);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-platform,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-platform{
                border-color: var(--pale-blue);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-platform *,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-platform *{
                color: var(--pale-blue);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-guest,
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-travel,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-guest,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-travel{
                border-color: var(--pale-blue);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-guest *,
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-travel *,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-guest *,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-travel *{
                color: var(--pale-blue);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-special *,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-special *{
                color: var(--vivid-yellow);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-kids,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-kids{
                border-color: var(--vivid-orange);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-kids *,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-kids *{
                color: var(--vivid-orange);
            }
            .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-operaopen,
            .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-operaopen{
                background: var(--dark-purple);
                border-color: var(--dark-purple);
            }
                .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-operaopen span,
                .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-operaopen span{
                    color:white;
                }
                    .program.program-tickets .accordion-header:hover .card-txts .tags .tag.tag-operaopen i,
                    .program.program-tickets .active .accordion-header:hover .card-txts .tags .tag.tag-operaopen i{
                        color: var(--light-yellow);
                    }





        .program.program-tickets .active .accordion-header:hover .when,
        .program.program-tickets .active .accordion-header:hover .card-txts *{
            color: #fff;
        }
            .program .accordion-header:hover .main-img::before{
                display: none;
            }
            .program .active .accordion-header:hover .main-img::before{
                display: inherit;
            }

        .program .accordion-header:hover .main-img {
            right: 0;
            width: 100% !important;
        }
            .program .accordion-header:hover .main-img img{
                width: 100%;
            }
        .program .list .card.active .accordion-header:hover .main-img,
        .program .list .card.active .accordion-header:hover .main-img img,
        .program .list .card.active .accordion-header .main-img,
        .program .list .card.active .accordion-header .main-img img{
            right: 0 !important;
            width: 100% !important;
            min-width: none;
            max-width: none;
            position: absolute !important;
        }
        .program.program-tickets .active .accordion-header .tags,
        .program.program-tickets .active .accordion-header .card-txts,
        .program.program-tickets .active .accordion-header:hover .tags,
        .program.program-tickets .active .accordion-header:hover .card-txts{
            padding: 0;
            width: 100% !important;
            max-width: none;
            margin: 0 0 1rem 0;
        }

        .program.program-tickets .list .card.active .accordion-header .tag{
            padding: 0.3rem 0.5rem 0.25rem;
        }

        .program .accordeon-buttons,
        .program .accordion-header:hover .accordeon-buttons{
            flex-direction: row;
            padding: 0;
            width: 100%;
        }
        .program .accordion-header:hover .accordeon-buttons{
            margin: 0;
        }
            .program .accordeon-buttons .alert{
                width: fit-content;
                padding:0.6rem 0.5rem !important;
                flex-direction: row;
            }
            .program .accordion-header:hover .accordeon-buttons{
                border: none;
            }
            .program .active .accordeon-buttons,
            .program .active .accordion-header:hover .accordeon-buttons{
                border: none;
                margin: 0;
                padding: 0;
            }
        .program .details-button,
        .program .active .details-button,
        .program .accordion-header:hover .details-button,
        .program .active .accordion-header:hover .details-button{
            width: auto;
            font-size: 1rem;
            padding: 0.55rem 0.75rem;
            bottom: 0;
        }
        .program .active .sellers,
        .program .active .accordion-header:hover .sellers{
            width: auto;
            margin: 0;
            padding: 0.25rem;
        }
        .program .active .sellers-list,
        .program .active .accordion-header:hover .sellers-list{
            flex-direction: row;
        }
        .program .active .sellers-list .label,
        .program .active .accordion-header:hover .sellers-list .label{
            display: none;
        }
        .program .active .sellers-list .cashiers{
            width: 7rem;
        }
            .program .active .sellers-list .cashiers span{
                font-size: 0.75rem;
            }
        .program .accordion-header:hover .dots{
            opacity: 0;
        }
        .program .dots::before,
        .program .dots::after{
            display: none;
        }

        .program .accordion-body {
            flex-direction: column;
        }
            .program .accordion-body .event-cast,
            .program .accordion-body .event-texts{
                width: 100%;
            }
            .program .accordion-body .event-texts{
                padding: 0;
            }
            .program .accordion-body .event-texts .event-desc{
                max-width: 500px;
            }
            .program .event .accordion-body .team .member{
                width: calc((100% - 1.5rem) / 2);
            }
                .program .event .accordion-body .team .member .img{
                    margin-right: 0.75rem;
                }
            .label-group .label-content{
                line-height: 135%;
            }
            .program .accordion-body .event-texts .labels-group{
                margin-bottom: 0;
            }
            .program .accordion-body .event-texts .card-more{
                margin:0;
                align-self: normal;
            }
            .program .accordion-body .event-texts .card-more a{
                border:1px solid var(--dark-blue);
            }
            .program .accordion-body .event-texts .card-more a:hover{
                margin: 0;
            }

    /* performance */
    .event-dates .widget .accordion-item.card .info {
        max-width: 19.9rem !important;
        width: 100% !important;
        text-align: left;
    }
    .event-dates .widget .accordion-item.card.open.active .info{
        width: 100% !important;
    }
    .event-dates .date,
    .event-dates .time{
        width: 7rem;
    }
        .event-dates .time{
            margin-left: -7.5rem;
        }
    .event-dates .status {
        text-align: left;
    }
    .event-dates .card .location{
        margin: 0.25rem 0;
        max-width: none;
        width: calc(100vw - 26rem);
        font-size: 0.65rem;
        min-width: 10rem;
    }
    .event-dates .sellers{
        flex-direction: row;
        display: flex;
        align-items: center;
        gap: 0.25rem;
        flex-wrap: wrap;
    }
        .event-dates .sellers-list{
            flex-direction: row;
        }
            .sellers-list .seller-item{
                width: 3rem;
            }
                .sellers-list .seller-item.cashiers{
                    width: 8rem;
                }
    .event-dates .widget .accordion-item.card.open.active .accordeon-button{
        margin-top: 1rem;
    }
    .event-dates .accordion-body{
        padding: 1rem;
        width: 100% !important;
    }
        .event-dates .accordion-body > .row{
            padding: 0;
        }
        .widget-cast .team .member .img,
        .widget-cast .team .member .img img{
            height: 3rem;
            width: 3rem;
        }
        .event-dates .accordion-item .accordion-body .team{
            gap: 2rem;
        }
            .event-dates .accordion-item .accordion-body .team .member{
                width: calc((100% - 2rem)/2);
                gap: 0.75rem;
            }
                .event-dates .accordion-body .team .member h5 {
                    font-size: 1rem;
                }

    /* program table */
    .program.table .list .card .card-txts .title{
        max-width: 100%;
    }
    .program.table .list{
        padding: 1.5rem;
    }
    .program.table .when{
        width: fit-content !important;
        gap: 1rem !important;
        order: 1;
    }
    .program.table .tags{
        order: 2;
    }
    .program.table .list .card .card-txts .tag-special{
        margin: -0.75rem 0 0.75rem;
    }
    .program.table .list .card .card-txts{
        margin: 0;
        order: 3;
    }
    .program.table .list .card .location{
        order: 4;
        padding: 0;
        width: calc(100% - 10rem);
    }
    .program.table .list .card .card-more{
        order: 5;
        width: 7rem;
    }


    /* locations */
    .locations .list .card-txts{
        width: calc(100% - 3rem);
        padding: 1.5rem;
    }

    /* posts help */
    .help .grid{
        gap: 3rem;
    }
    .posts.help .card {
        width: 100%;
    }
    .posts.help .card .card-txts{
        display: flex;
        flex-direction: row;
        gap: 1rem;
        align-items: left;
        padding: 0rem 1rem;
        justify-content: left;
    }
        .posts.help .card .post-icon {
            width: 3rem;
            font-size: 3rem;
        }
        .posts.help .card h2.title{
            font-size: 1.25rem;
            max-width: none !important;
        }
        .posts.help .card .card-more{
            width: 2rem;
            margin: 0;
            padding: 0;
        }
        .posts.help .card .card-more span{
            display: none;
        }

    .widget-event-details .widget-content{
        flex-direction: column;
        gap: 2rem;
    }
    .widget-event-details .rich-text{
        order: 1;
        width: calc(100% - 2rem);
    }
    .widget-event-details .labels-group{
        order: 2;
        flex-direction: row;
        gap: 2rem;
        align-self: center;
        width: auto;
        text-align: center;
    }
    .rich-text p{
        max-width: 600px;
    }
    .widget-event-details, .widget-creatives, .widget-cast{
        padding-top: 0;
    }
    .widget-creatives .team{
        gap: 0.5rem;
        row-gap: 2rem;
    }
    .widget-creatives .team .member {
        width: calc((100% - 2rem) / 3);
        min-width: 10rem;
    }
    .widget-cast .team{
        gap: 1.5rem;
    }
        .widget-cast .team.main-members .member{
            width: calc((100% - 3rem) / 3);
        }
        .widget-cast .team .member{
            width: calc((100% - 4rem) / 3);
            flex-direction: column;
            text-align: center;
        }

    .widget-cast .team.departments .member{
        width: calc((100% - 4rem) / 3);
        flex-direction: column;
    }
        .widget-cast .team.departments .member .texts{
            width: 100%;
            margin: 1rem 0 0 0;
        }
    .widget-location .card{
        flex-direction: column;
        width: 75%;
        margin: 0 auto;
    }
        .widget-location .img{
            width: 100%;
        }
        .widget-location .texts{
            padding: 2rem;
            width: calc(100% - 4rem);
        }
    .sticky-header .container.tiny{
        gap:0.5rem;
    }
    .sticky-header .container.tiny a.logo img{
        height: 1.25rem;
        width: 3rem;
    }
    .sticky-header .title{
        font-size: 0.75rem;
    }
    .sticky-header nav .nav-item.small{
        padding: 0.25rem 0rem !important;
        flex-direction: column;
        text-align: center;
    }
    .sticky-header nav .nav-item.small span{
        display: none;
    }
    .sticky-header nav .nav-item.small i{
        font-size: 1rem;
        margin: 0;
        display: block;
    }

    .event-dates .accordion-item .accordion-header{
        flex-wrap: wrap;
    }

    /* pagination */
    .list-foot .pages{
        gap: 0;
    }
        .list-foot .pages a{
            padding: 0.5rem;
        }

    /* repertoare */
    .repertoare .grid .event.card .card-txts .title{
        font-size: 1.75rem;
        max-width: calc(100vw - 5rem) !important;
    }
    .repertoare .page-header .row.ver-center{
        flex-direction: column;
        align-items: start;
    }
    .repertoare .col.page-title{
        margin: 0rem 0 2rem 5.5rem;
    }
    .repertoare .col.page-desc{
        text-align: left;
    }
    .repertoare .grid .card{
        width: 100%;
    }

    /* contacts */
    .contacts .post-content .row:nth-of-type(2){
        flex-direction: column;
        max-width: 500px;
        margin: 0 auto;
    }
        .contacts .post-content .col > div{
            padding: 0;
        }
        .contacts .contacts-list{
            padding: 0;
            gap: 3rem;
            border: 0;
            margin: 0;
        }
        .contacts .post-content .col.contacts-list > div{
            margin: 0;
        }

    /* footer */
    footer #contact > div > .col > .row,
    footer #tickets > div > .col > .row{
        gap:1rem;
    }
    footer #contact div .col > .row > .col,
    footer #tickets div .col > .row > .col{
        width: calc((100% - 1rem) / 2);
    }
    footer h4{
        font-size: 1.5rem;
    }
    footer ._footer_links .row{
        gap: 1.5rem;
    }
    .widget-title h5{
        font-size: 1.5rem;
    }
    footer ._footer_cast .container .row .col:first-of-type{
        min-width: 22rem;
    }
    footer a.footer-link-small,
    footer .footer-text-small{
        text-wrap: wrap;
    }
    footer .footer-main-logo-link img{
        margin-right: -1rem;
        margin-top: 2rem;
    }

}

@media screen and (max-width: 479px){
    h5{
        font-size: 1.25rem;
    }
    p,
    .rich-text p{
        font-size: 1rem;
    }
    .container{
        width: calc(100% - 1.5rem) !important;
        padding: 3rem 0.75rem 1rem !important;
        margin: 0;
    }
    .container.small{
        width: calc(100% - 1.5rem);
        padding: 1.5rem 1.5rem;
        margin: 0;
    }
    header .container,
    .subnav .container,
    .subnav nav {
        width: 100% !important;
        gap: 0;
        margin: 0;
    }
    .subnav nav,
    header .container{
        padding: 0 !important;
    }
    .subnav .container{
        padding: 0.5rem 0 0 0 !important;
    }
    .separator{
        max-width: 100%;
    }
    .nav-item.menu{
        width: 100%;
        justify-content: end;
    }

    .event-head{
        width: 100%;
    }

    /* index */
    .welcome{
        padding: 0rem;
        width: 100vw;
    }
    .welcome .container{
        padding: 1.5rem 0 0 !important;
    }
    .welcome .container > .row{
        flex-direction: row;
        margin: 0 0 0 1rem;
        width: calc(100% - 2rem);
    }
    header .container > .row > .home-title.col:first-of-type{
        flex-direction: column;
    }
        .welcome img{
            height: 4rem;
            margin-top: 0rem;
            margin-right: 1rem;
        }
        .welcome .home-title{
            margin-top: 1rem;
        }
            .welcome h1{
                font-size: 1rem;
            }
            .welcome span{
                font-size: 1.25rem;
            }
        .welcome-nav{
            margin: 0;
        }
        .welcome-nav .container{
            padding: 1.5rem 0.25rem 0 !important;
            width: calc(100% - 0.5rem) !important;
        }
        .welcome-nav > div > div{
            flex-direction: column;
        }
        .welcome-nav .welcome-nav-items{
            gap: 0.25rem;
        }
            .welcome-nav .welcome-nav-item{
                width: calc((100% - 5rem) / 3);
                padding: 0.75rem;
                background-size: 80%;
            }
            .welcome-nav-item a.main,
            .welcome-nav-item h2{
                font-size: 2.75vw;
            }
            .welcome-nav-item span{
                font-size: 0.6rem;
                margin-bottom: 0.25rem;
            }
            .welcome-nav-item.operaopen .logo{
                margin: 1rem auto 0;
            }
                .welcome-nav-item.operaopen .logo img{
                    height: 15vw;
                    width: auto;
                }
        .banner{
            gap:0.25rem;
            width: 100%;
            margin-top: 0.25rem;
        }
        .banner img{
            width: calc((100% - 0.5rem)/3);
        }
        .welcome-events .card .card-more{
            margin-top: 1rem;
            margin-bottom: 1rem;
        }
        .welcome-nav-item .subs{
            gap:0.33rem;
        }
        .welcome-nav-item .subs li{
            padding: 0;
            margin: 0;
        }
        .welcome-nav-item .subs li:before{
            display: none;
        }

    /* nav */
    header nav.service-links{
        width: auto;
        margin: 0;
    }
    header.welcome .service-links{
        top: 1rem;
        right: 1rem;
        width: auto;
    }
    header .container > .row > .col:first-of-type{
        margin: 0 0;
    }
    header nav{
        gap: 0rem;
        margin-left: -1rem;
    }
    header .hor-end:last-of-type{
        margin-left: -1rem;
    }
    header .home-link{
        margin-left: -2rem;
    }
    .nav-item{
        min-width: 2rem;
        margin: 0 !important;
        padding: 0.5rem !important;
        border: none !important;
        flex-direction: row;
        width: auto;
    }
        .nav-item i {
            display: inline;
        }
        header .hor-end:first-of-type{
            position: absolute;
            top: 1rem;
            right: 1rem;
            width: 5rem;
        }
        .head-icons a.lang-change span{
            display: inline;
            font-size: 0.75rem;
        }

    header nav.service-links .lang-change{
        margin:0;
        padding: 0;
    }
    .nav-item span,
    .subnav .nav-item.small span {
        font-size: 0.7rem;
        line-height: 0.7rem;
    }
    .subnav .nav-item.small.active.news,
    .subnav .nav-item.small.active.jobs,
    .subnav .nav-item.small.active.medias,
    .subnav .nav-item.small.active.help,
    .subnav .nav-item.small.active.buyer{
        margin:0rem;
    }

    .grid .card-txts .title{
        max-width: none !important;
        font-size: 1rem;
    }


    .widget-content{
        margin-bottom: 1rem;
    }
    .widget-event-details .rich-text{
        width: 100%;
    }
    .post-content .rich-text{
        padding: 0;
    }
    .post-content .rich-text > *{
        width: calc(100% - 2rem);
        margin: 0 auto 1rem !important;
    }
    .rich-text li,
    .card-team .team-title p{
        width: calc(100% - 2rem);
        font-size: 0.9rem !important;
    }
    .rich-text p{
        width: calc(100% - 2rem);
        font-size: 1rem !important;
        margin: 0 auto 1rem !important;
        padding: 0 0 1rem;
    }
    .post-details .post-content h1{
        font-size: 2rem;
        width: calc(100% - 2rem) !important;
    }
    .post .grid .card{
        width: 100%;
    }
    .posts.help .card h2.title{
        font-size: 1.15rem;
        padding: 1.5rem 0;
    }

    /* pagination */
    .list-foot .pages a.prev,
    .list-foot .pages a.previous{
        padding: 0.5rem;
        font-size: 0.75rem;
    }
    .list-foot .pages a.prev i,
    .list-foot .pages a.previous i{
        display: none;
    }

    /* tabs */
    .tab a{
        font-size: 0.75rem;
    }

    /* post details */
    .post-details .post-content .type{
        margin: 0 0 1.5rem;
        padding: 0;
    }
    .post-details .post-content h1{
        margin: 0 auto;
    }
    .member-details .rich-text{
        padding: 0 1rem;
    }
    .post-details .published{
        margin: 1.5rem 0 0 0;
        padding: 0;
    }

    /* jobs */
    section .section-title h3{
        font-size: 1.25rem;
        line-height: 115%;
    }
    .jobs .widget-content h4{
        font-size: 2rem;
    }
    .jobs .card{
        width: calc(100% - 0.5rem);
        flex-direction: row;
    }
    .jobs .list .card-txts,
    .jobs .card-desc{
        width: calc(100% - 2rem);
        padding: 1rem;
        margin: 0;
    }
    .jobs .card-desc p{
        display: none;
    }



    /* gallery */
    .head-gallery .gallery{
        gap: 0.25rem;
    }

    .subs{
        display: none;
    }

    .tag {
        font-size: 0.65rem;
        padding: 0.4rem 0.6rem !important;
    }

    .tag.type{
        padding: 0 !important;
    }

    .posts .list .card-desc{
        padding: 0 1.5rem;
    }
    .grid .card .card-txts{
        padding: 1.5rem 1.5rem 0.5rem;
    }
    .posts .list .card-txts{
        padding: 1.5rem;
        width: calc(100% - 3rem);
    }

    /* index program */
    .welcome-events .grid .card{
        width: 100%;
        padding-bottom: 5rem;
    }
    .welcome-events .rich-text{
        margin:0;
    }
    .welcome-events .section-title,
    section .section-title{
        margin: 0;
        padding: 0;
        text-align: center;
        line-height: 135%;
    }
    .welcome-events .card .time{
        flex-direction: row;
        gap: 0.25rem;
        margin-top: 0.25rem;
    }
    .welcome-events .card .time,
    .welcome-events .card .location{
        opacity: 1;
    }
    .welcome-events .card .location{
        margin-bottom: 1rem;
        width: 100%;
        max-width: calc(100vw - 3rem);
    }

    .welcome-events .card-txts{
        gap: 0.75rem;
    }
        .welcome-events .card-txts .title{
            font-size: 1.5rem;
            max-width: calc(100vw - 5rem) !important;
            margin: 0;
        }
        .grid .event.card .title {
            overflow-wrap: normal;
            max-width: calc(100vw - 5rem) !important;
            overflow: hidden;
            text-overflow: ellipsis;
            letter-spacing: normal;
            font-size: 1.5rem;
        }
        .card-txts .title{
            font-size: 1.5rem;
        }
        .grid .card-img{
            height: auto;
        }
            .welcome-events .card .date{
                font-size: 1.75rem;
                margin-right: 0.5rem;
            }
            .welcome-events .event .author {
                margin: 0 0 -0.5rem 0;
            }

    /* program & news */
    .page-header.simple .col.page-title{
        width: calc(100% - 2rem);
        margin: 0;
        text-align: center;
    }
    .page-header.simple .row.ver-center h1{
        margin: 1rem 0 0 0;
        text-align: left;
    }
    .page-header.simple .row.ver-center .page-desc{
        padding-top: 1rem;
    }
    .program .page-header .page-title i{
        display: none;
    }
    .program .accordion-header,
    .program .card .accordion-header:hover{
        flex-direction: column;
        padding: 1.5rem;
    }
    .program h6.month{
        text-align: center;
    }
    .program .when{
        flex-wrap: wrap;
    }
    .card .location{
        font-size: 0.75rem;
    }
    .program.program-tickets .active .when *,
    .program.program-tickets .active .accordion-header:hover .when *{
        color: white !important;
    }

    .program .tickets-button, .program .alert{
        width: fit-content !important;
    }
    .program .list .card .accordion-header:hover .main-img,
    .program .list .card .accordion-header:hover .card-txts,
    .program .list .card .accordion-header .main-img,
    .program .list .card .accordion-header .card-txts,
    .program .list .active.card .accordion-header .main-img,
    .program .list .active.card .accordion-header .card-txts,
    .program .list .active.card .accordion-header:hover .main-img,
    .program .list .active.card .accordion-header:hover .card-txts{
        width: 100% !important;
        margin: 0;
        padding: 0;
    }
    .program.program-tickets .active .accordion-header .tags,
    .program.program-tickets .active .accordion-header:hover .accordion-header .tags{
        margin-bottom: 2rem !important;
    }
    .program .card-txts .author{
        font-size: 1rem;
    }
    .program .accordion-header .card-txts .title{
        font-size: 1.75rem;
        max-width: calc(100vw - 5rem);
        overflow: hidden;
        text-overflow: ellipsis;
        overflow-wrap: unset;
    }
    .program .active .sellers-list,
    .program .active .accordion-header:hover .sellers-list{
        justify-content: center;
    }
    .program .active .sellers-list .seller-item,
    .program .active .accordion-header:hover .sellers-list .seller-item{
        width: 4rem;
        margin: 0;
    }
    .program .active .sellers-list .cashiers,
    .program .active .accordion-header:hover .sellers-list .cashiers{
        padding: 0.25rem;
        width: 7rem;
    }
    .program .list .card.active .accordion-item .seller-item img,
    .program .list .card.active .accordion-header:hover .accordion-item .seller-item img{
        height: 1.25rem;
    }
    .program .card .accordion-header .tags{
        margin-bottom: 2rem;
    }
    .program .list .card .accordeon-buttons,
    .program .list .card .accordion-header:hover .accordeon-buttons{
        margin-top:1rem;
    }
    .program .list .card.active .accordeon-buttons,
    .program .list .card.active .accordion-header:hover .accordeon-buttons{
        flex-direction: column;
        padding-bottom: 1.5rem;
        gap: 1rem;
    }
        .program .active .accordeon-buttons .sellers,
        .program .active .accordeon-buttons .sellers .sellers-list,
        .program .active .accordion-header:hover .accordeon-buttons .sellers,
        .program .active .accordion-header:hover .accordeon-buttons .sellers .sellers-list{
            width: 100%;
            background: none;
            padding: 0;
        }
        .program .active .accordeon-buttons .details-button,
        .program .active .accordion-header:hover .accordeon-buttons .details-button{
            bottom: -1.5rem;
            width: 100%;
            background: white;
            color: var(--dark-blue);
        }
        .program .accordeon-buttons .alert{
            border: 1px solid var(--vivid-salmon);
        }
        .program .accordeon-buttons .alert span{
            display: none;
        }
        .program .accordeon-buttons .alert i{
            margin: 0;
        }
        .program .event .accordion-body .team{
            gap: 1rem;
        }
        .program .event .accordion-body .team .member {
            width: calc(100% - 1.5rem) !important;
        }
        .program .event .accordion-body .team.secondary > .label{
            margin: 0;
        }
        .program .accordion-body .event-desc{
            margin-bottom: 1rem;
        }
        .program.table .list .card .card-txts .title{
            font-size: 1.5rem;
            max-width: calc(100vw - 5rem);
            overflow: hidden;
            text-overflow: ellipsis;
            overflow-wrap: unset;
        }
        .program.table .card .when .day,
        .program.table .card .when .time{
            font-size: 1rem;
        }

    .list .card{
        width: 100%;
        flex-direction: column;
    }

    .grid{
        display: flex;
        flex-direction: column;
    }
        .grid .card{
            width: 100%;
        }

    /* Related post Widget */
    .posts .list .card {
        width: 100%;
    }

    /* team */
    .team.team-management,
    .subteam .team.team-large{
        gap: 0.25rem;
    }
        .team.team-management .member{
            width: calc((100% - 0.5rem) / 3);
        }
            .team.team-management .texts{
                padding: 1rem !important;
                width: calc(100% - 2rem) !important;
            }
                .team.team-management .texts .member-name{
                    font-size: 1rem;
                }
                .team.team-management .texts .member-role{
                    font-size: 0.55rem;
                    line-height: 125%;
                }
    .team.team-management.team-large .texts .member-name{
        font-size: 1.25rem;
    }
    .teams .grid .list-item.card-team{
        width: 100%;
    }
        .card-team .team{
            gap: 1rem;
            flex-direction: column;
        }
        .card-team .member{
            width: 100%;
        }
    .teams .card-team .team-title,
    .teams .card-team .team{
        width: calc(100% - 2rem);
        padding: 1rem;
    }
            .card-team .member .img{
                width: 4rem;
            }
            .team .member .member-name{
                font-size: 1rem;
            }
            .team .member .member-role{
                font-size: 0.65rem;
                margin-top: 0.25rem;
            }
    .card-team .team-title h3,
    .card-team .card-txts .title{
        font-size: 1.5rem;
    }

    .subteam-groups .tab{
        width: 15rem;
    }
        .subteam-groups .tab button{
            font-size: 1rem;
            padding: 0.5rem 0.5rem;
        }
        .tabcontent{
            padding: 0.5rem;
        }


    .subteam-rich .teams{
        padding: 0 1rem;
    }
    .subteam-rich .team{
        flex-wrap: nowrap;
        flex-direction: column;
    }
        .subteam-rich .team .member {
            width:100%;
        }
    .subteam-groups-nav{
        width: calc(30% + 2rem);
    }
    .subteam-groups-content{
        padding: 1rem;
        gap: 0;
    }
    .page-header.subteam .page-title{
        width: 100%;
        margin-top: -4rem;
    }
    .page-header.subteam-rich .page-title h1{
        font-size: 2rem;
        text-align: left;
        margin-right: 3rem;
    }
    .subteam-rich .page-title h2{
        font-size: 1rem;
        margin-right: 3rem;
        text-align: left;
    }
    .page-header.subteam-rich{
        min-height: unset;
    }
    .subteam .event-head {
        min-height: unset;
        max-width: 0;
        padding: 0;
        height: auto;
    }

    .platform-operaopen .subteam .team .member{
        width: calc((100% - 2rem) / 3);
        min-width: auto;
    }
    .platform-operaopen .subteam .team .member .texts .member-name{
        font-size: 1rem;
    }
    .team-simple{
        gap: 1.5rem;
        padding: 0 0 2rem;
    }
    .team-simple .member{
        width: 100%;
        text-align: center;
    }
        .team-simple .member .texts .member-name{
            font-size: 1.175rem;
        }
        .team-simple .member .texts .member-role{
            font-size: 0.75rem;
            line-height: 135%;
            max-width: none;
            margin: 0.175rem 0 0 0;
        }

    .member-details .post-content .main-img img{
        width: 100%;
    }
    .member-details .rich-text{
        margin: 0 auto;
    }
        .member-details .rich-text p{
            max-width: 400px;
        }
    .member-details .post-content > .col:first-of-type{
        text-align: center;
    }
    .member-details .post-content .col{
        gap: 1rem;
    }
    .post-details.member-details .main-img{
        margin-top: 0;
        width: 90% !important;
    }

    .tickets-header .sellers-list .seller-item.cashiers{
        width: 5rem;
    }
    .tickets-header .container.tiny{
        padding: 0.5rem 0 !important;
    }
    .program .tickets-header .sellers{
        width: 100%;
    }

    /* performance */
    .event .event-head{
        width: 60% !important;
    }
    .event .event-head .tags{
        width: 100%;
        margin-bottom: 2.5rem;
    }
    .page-header.event .page-title h1{
        font-size: 1.75rem;
    }
    .page-header.event .page-author h2{
        font-size: 1rem;
    }
    .event-dates .widget .accordion-item.card .info {
        width: 100% !important;
        margin-bottom: 3rem;
        max-width: none !important;
    }
    .event-dates .widget .accordion-item.card.open.active .info{
        max-width: 100% !important;
    }
    .event-dates .date,
    .event-dates .time{
        width: 5.75rem;
        margin: 0;
        padding: 0;
    }
    .event-dates .status {
        text-align: center;
        width: 100%;
    }
    .event-dates .card .location{
        width: calc(100% - 12.5rem);
        margin:0;
        order: 3;
        font-size: 0.7rem;
        max-width: none;
    }
    .event-dates .card .tags{
        order: 4;
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        justify-content: center;
    }
    .event-dates .sellers{
        justify-content: center;
    }
    .event-dates .sellers-list{
        flex-direction: row;
    }
        .sellers-list .seller-item{
            width: 4rem;
            text-align: center;
        }
            .sellers-list .seller-item.cashiers{
                width: fit-content;
            }


    .event-dates .accordion-body{
        padding: 1.5rem;
        width: 100% !important;
    }
    .accordion-body > .row{
        width: 100%;
    }
    .event-dates .accordion-body > .row{
        padding: 0;
    }
    .event-dates .accordion-item .accordion-body .team{
        gap: 1rem;
        flex-wrap: nowrap;
        flex-direction: column;
    }
        .event-dates .accordion-item .accordion-body .team .member{
            width: 100%;
        }
    .event-dates .accordeon-button{
        width: 100%;
    }
        .event-dates .card .details-button{
            width: 100%;
        }

    .widget-cast .team {
        gap: 1.5rem;
    }
        .widget-cast .team .member .img,
        .widget-cast .team .member .img img {
            height: 4rem !important;
            width: 4rem !important;
        }
        .widget-cast .team .member .img{
            margin: 0 0 0.5rem;
        }
        .widget-cast .team.departments .member .img,
        .widget-cast .team.departments .member .img img {
            width: auto !important;}

    .widget-cast .team.departments{
        gap: 1rem;
    }
    .widget-cast .team.departments .member .texts{
        text-align: center;
    }
    .widget-cast .team.departments .member h5{
        font-size: 1.25rem;
    }

    .widget-location .card{
        width: 90%;
    }
    .widget-location .texts {
        padding: 1.5rem;
        width: calc(100% - 3rem);
    }

    .gallery img{
        height: 6rem;
    }

    /* operaopen */
    .platform.platform-operaopen .page-header{
        background-size: 100vw auto !important;
    }
        .platform.platform-operaopen .event.page-header .container {
            width: 100% !important;
            padding: 0 !important;
            margin: 0;
        }
        .platform-operaopen .event .event-head {
            margin: 15rem -1rem 0;
            background: var(--dark-purple);
            width: calc(100% - 4rem) !important;
            padding: 2rem 3rem 0;
        }

    .platform-operaopen #archive a.card .card-more{
        margin-bottom: 1rem;
        padding: 0.5rem;
    }

    .platform-operaopen .grid{
        flex-direction: row;
    }
    .platform-operaopen .grid .card {
        width: calc((100% - 1rem) / 2);
    }
    .platform-operaopen .grid .card .card-txts{
        padding: 1rem 1rem 0;
    }
    .platform-operaopen .grid .card-txts .title{
        font-size: 1.25rem;
        max-width: none;
    }


    /* contacts */
    .contacts .post-content .row:nth-of-type(2){
        flex-direction: column;
        max-width: 380px;
        margin: 0 auto;
    }
        .contacts .contacts-list{
            gap: 2rem;
            padding: 0 1rem;
            width: auto;
        }


    /* locations */
    .locations .list .card-txts{
        padding: 1.5rem;
        width: calc(100% - 3rem);
    }

    /* help */
    .posts.help .grid{
        gap: 1.5rem;
    }
        .posts.help .card .post-icon {
            width: 2rem;
            font-size: 1.5rem;
        }

    /* footer */
    footer .container{
        padding: 4rem 0.75rem !important;
    }
    ._footer_contacts > div > div > div,
    ._footer_tickets > div > div > div,
    ._footer_links > div > div,
    ._footer_cast > div > div > div > div{
        flex-direction: column;
    }
    ._footer_tickets > div > div > div > div,
    footer #contact div .col > .row > .col{
        width: 100% !important;
        margin-bottom: 2rem;
    }
    ._footer_tickets > div > div > div > div,
    ._footer_contacts > div > div > div > div{
        align-items: center;
        text-align: center;
    }
    ._footer_links > div > div{
        gap:2rem;
    }
    footer h6{
        margin-bottom: 0.5rem;
    }
    ._footer_sponsors a.footer-link-small,
    ._footer_contacts a.footer-link-small{
        text-align: center;
    }
    footer ._footer_links .row{
        gap: 1.5rem;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    footer ._footer_links .col{
        width: calc((100% - 1.5rem) / 2);
    }
    footer a.footer-link-small,
    footer .footer-text-small{
        text-wrap: wrap;
        max-width: calc(100vw - 3rem);
        font-size: 0.9rem;
    }
    footer ._footer_sponsors .flex-wrap{
        grid-column-gap: 3rem;
        grid-row-gap: 2rem;
    }
    footer ._footer_sponsors .footer-link-logo img{
        height: 2rem;
    }
    footer h5{
        font-size: 1.25rem;
        line-height: 115%;
    }
    footer h4{
        font-size: 1rem;
    }
        .contact-item span{
            font-size: 1.15rem !important;
            line-height: 130%;
        }
    footer ._footer_cast .container > .row{
        gap: 1rem;
    }
    footer ._footer_cast .container > .row > .col:last-of-type{
        width: 5rem;
    }
    footer .footer-social-link{
        align-self: flex-end;
    }
    footer ._footer_cast .container .row .col:first-of-type {
        min-width: auto;
    }
}
