.main {
	padding-top:7.5em;
}

	.cta {
		position:absolute;
		top:7em;
		width:20%;
		color:#111;
		font-size:1.1em;
		text-transform: uppercase;
		letter-spacing: 0.2em;
		text-align: center;
		padding:0.75em 1em;
		text-decoration: none;
		background-color:var(--gold2);
		border-radius:20em;
		margin-bottom:0.5em;
	}

		.buy-btn {
			left:20px;
		}

		.watch-btn {
			right:20px;
		}

		.cta p {
			display: inline-block;
			margin-bottom: 0;
		}

		.cta:hover {
			background-color:#fff;
		}

h1{
	float:left;
	font-size:5.5em;
	font-weight: 300;
	color:var(--gold2);
	margin-bottom:0.5em;
	width:100%;
	text-align:center;
	line-height: 1;
}

.choose-country {
	text-align: center;
	margin:5em 0;
	display:grid;
	grid-template-columns: 1fr 1fr;
	grid-gap:2em 6em;
}

	.choose-country > h2 {
		color:#fff;
	}

.country-btn,
.all-terr {
	color:#111;
	font-size:1.6em;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	text-align: center;
	padding:1em 3em;
	text-decoration: none;
	background-color:var(--gold2);
	border-radius:20em;
}

	.country-btn:hover,
	.all-terr:hover {
		background-color:#fff;
	}


	.all-terr {
		display:block;
		float:none;
		clear:both;
		width:300px;
		margin:0 auto;
		font-size:1.3em;
	}

.shows {
	margin-bottom:3em;
	padding:0 5%;
}

	.type-intro {
		text-align: center;
		margin-bottom:5%;
		padding:0 5%;
	}

		.type-intro p {
			background-color: rgba(34, 132, 142, 0.65);
			font-size:2em;
			border-radius:1em;
		}

.venue {
    float:left;
    clear:left;
    width:100%;
    margin-bottom:5px;
    border-radius: 10em;
    padding:0.5em;
    background-color:var(--bgblue);
}

	.Red {
		background-color: rgba(85, 23, 23, 0.65);
	}

	.Orange {
		background-color: rgba(142, 79, 34, 0.65);
	}

	.Yellow {
		background-color: rgba(142, 125, 34, 0.65);
	}

	.Green {
		background-color: rgba(83, 142, 34, 0.65);
	}

	.Blue {
		background-color: rgba(34, 132, 142, 0.65);
	}

	.Purple {
		background-color: rgba(83, 34, 142, 0.65);
	}

	.main .show-type {
		font-weight:bold;
		font-size: 3em;
		margin-top:2em;
		color:#fff;
		float:left;
		clear:both;
		text-align: center;
		width:100%;
	}

	.main h4.month-title {
		float:left;
		clear:left;
		width: 100%;
		font-size:2em;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        font-weight: normal;
        text-align: center;
	}

    .venue-main {
        float:left;
        width:70%;
    }
    
        .venue-main h2 {
            color:#fff;
            font-size:2em;
            margin-bottom: 0.2em;
            letter-spacing: 0.05em;
        }

        	.venue-main h2 span {
        		text-transform: uppercase;
        		color:var(--gold2);
        	}

			.venue-main .country {
				background-color:var(--gold);
				color:var(--bgblue);
				padding: 3px 3px;
				font-size: 0.5em;
				vertical-align: middle;
				margin-bottom: 4px;
				display: inline-block;
				border-radius:2px;
			}
        
        .venue-main p {
            font-size:1.1em;
			margin-bottom:0;
			text-transform: uppercase;
        }
        
            .venue-main p span {
                color:var(--gold2);
            }
            
            .venue-main .small {
                font-size:1.1em;
            }

        .venue-date {
        	float:left;
        	margin-right:2em;
        	padding:0.5em;
        	padding-right:0.75em;
        	background-color:var(--gold2);
        	border-radius: 10em;
        	color:var(--bgblue);
        }

        	.venue-main .day {
        		float:left;
        		font-size:2.9em;
        		font-weight:700;
        		line-height:1;
        		padding:0;
        		text-align: center;
        		min-width:1.3em;
        	}

        	.my {
        		float:left;
        		text-align:center;
        		width:3em;
        	}

        		.main .month {
        			width:100%;
        			text-transform: uppercase;
        			font-weight: bold;
        			line-height:1.2;
        			font-size:1.2em;
        		}

        		.main .year {
        			width:100%;
        			line-height: 1;
        		}
    
    .venue-buy {
        float:right;
        width:29%;
    }
    
        .venue-buy a {
            float:right;
            color:#fff;
            text-decoration: none;
            font-size:1.2em;
            padding:1em 0.8em;
            border:1px solid var(--gold2);
            border-radius:0.2em;
            width:200px;
            text-align: center;
            max-width:100%;
            border-radius: 10em;
        }
        
            .venue-buy a:hover {
            	background-color:var(--gold2);
                border:1px solid var(--gold2);  
                color:var(--bgblue);
            }
            
            .venue-buy a.soon,
            .venue-buy a.sold-out{
				color:#fff;
				background-color:#333;
                cursor: default;
                font-size:1.2em;
            }
            
            .main p.lastfew {
				display:inline-block;
				border-radius:10em;
				clear:both;
				padding:0.1em 0.5em;
                font-size:1em;
				font-weight:bold;
                margin:0.1em 0 0 0;
                text-align: center;
				background-color:var(--gold2);
				color:#000;
				line-height: 1;
				text-transform: uppercase;
            }

				.venue-buy a:hover p.lastfew {
					background-color:#fff;
				}

			.main p.buyp {
				font-size:1em;
				line-height:1;
				margin:0 0.25em 0 0;
			}

            .venue-info {
            	float:left;
            }

            	.venue-info * {
            		line-height: 1;
            	}

            .venue-main .venue-details {
            	font-size:1.3em;
            	line-height: 1;
            }

.gallery {
	display:grid;
	grid-template-columns: repeat(5,1fr);
	grid-gap:1.5em;
	margin-bottom:5em;
}

.gallery a {
	background-color:var(--gold2);
	border-radius: 1em;
	overflow: hidden;
	border: 1px solid var(--gold2);
}

	.gallery a img {
		display:block;
		width:100%;
	}

	.gallery a:nth-of-type(4n) {
		margin-right:0;
	}
	
	.gallery a:hover {
		border: 1px solid #fff;
	}

.videos {
	margin-bottom:5em;
}
	.videos h2 {
		font-size:5.5em;
		font-weight: 300;
		color:var(--gold);
		margin-bottom:0.5em;
		width:100%;
		text-align:center;
		line-height: 1;
	}

	video {
		float:left;
		clear:left;
		width:100%;
		margin-bottom:2.5em;
	}


.tabs {
    margin-bottom:2em;
    text-align:center;
}

.tabs a {
    display:inline-block;
    line-height: 1;
    background-color:var(--gold2);
    color:#111;
    text-decoration: none;
    font-size: 1.6em;
    font-weight:300;
    padding:0.75em;
	border-radius: 0.5em;
	margin-bottom:0.25em;
}

    .tabs a.active,
    .tabs a:hover {
        background-color:#fff;
    }

.people {
	display:grid;
	grid-template-columns: repeat(4,1fr);
	grid-gap:1em;
}

.tab-content {
    display:none;
}

    .contents div:first-of-type {
        display:grid;
    }

.person {
	text-decoration: none;
	background-color:var(--bgblue);
	border-radius: 1em;
	overflow: hidden;
	border:1px solid var(--gold2);
}

	.person .text {
		color:var(--gold2);
		padding:1em;
	}

	.person:nth-of-type(4n) {
		margin-right:0;
	}
	
	.person h2 {
		font-size:1.8em;
		margin-bottom:0.25em;
		color:#fff;
	}
	
	.person p {
		margin-bottom:0;
		line-height:1;
		font-size:1.1em;
	}

	.person img {
		width:100%;
	}
	
	.person:hover {
		border:1px solid #fff;
	}
	
.cast-photo {
	float:left;
	width:45%;
	border-radius: 1em;
	overflow: hidden;
	border:1px solid var(--gold2);
	margin-bottom:5em;
}

.cast-member .right {
	float:right;
	width:50%;
}

	.cast-member h2 {
		clear:left;
		font-size:4em;
		font-weight:300;
		margin-bottom:0.25em;
	}

	.cast-member .role {
		font-size: 1.8em;
		color:var(--gold);
	}
	
	.backto {
		float:left;
		display:inline;
		font-size:1.3em;
		color:var(--gold);
		margin-bottom:2em;
		background-color:var(--bgblue);
		border-radius:10em;
		border:1px solid var(--gold2);
		text-decoration: none;
		padding:0.5em 1em;
	}

		.backto:hover {
			color:#fff;
			border:1px solid #fff;
		}

/* Store */
.category {
    background-color:#001e36cc;
    padding:3em;
    margin-bottom:1em;
}

    .item {
        border:1px solid var(--gold2);
        border-radius:1em;
        padding:2em;
        margin-bottom:1em;
        display:grid;
        grid-template-columns: 1fr 3fr 1fr;
        grid-gap:2em;
    }

        .item > img {
            width:100%;
			float:left;
        }

        .item .text {
            text-align:left;
        }

            .main .item h3 {
                margin-bottom:0.25em;
            }

            .item .gradient-btn {
                margin:0 0 0.5em 0;
                font-size:1.6em;
            }

			.item .cta {
				position:static;
				float:left;
				clear:left;
				width:100%;
			}

.default :is(p,h2,h3,h4,h5,h6,ul,ol) {
	text-align: center;
	width:min(700px,100%);
	margin-inline:auto;
}

.default :is(h2,h3,h4,h5,h6) {
	color:var(--gold);
	font-weight:300;
}

.about img {
	border:1px solid var(--gold2);
	border-radius:0.5em;
}


@media screen and (max-width:1199px) {
	.people {
		grid-template-columns: repeat(3,1fr);
	}
}

@media screen and (max-width:999px) {
	.main {
		padding-top:1em;
	}

	.venue-date {
		padding:0.5em;
	}

	.cta {
		position:static;
		float:left;
		width:auto;
		margin-right:0.5em;
		margin-bottom:2em;
		font-size:1em;;
	}

		.cta p {
			font-size:1em;
		}
}

@media screen and (max-width:699px) {
	.gallery {
		grid-template-columns: repeat(3,1fr);
	}

	.people {
		grid-template-columns: repeat(2,1fr);
	}

	.cast-photo,
	.cast-member .right {
		width:100%;
		margin-bottom:2em;
	}

	.product .text {
		padding:4%;
		width:100%;
	}

	.product .image {
		width:100%;
	}

		.product .image img {
			width:100%;
		}

	.venue {
		margin-bottom:1em;
		border-radius:2em;
		border:1px solid var(--gold2);
	}

		.venue-date {
			margin-right:0;
			width:20%;
			margin-bottom:0.5em;
			border-radius:1.5em;
		}

		.venue-info {
			float:right;
			width:75%;
		}

		.venue-buy,
		.venue-buy a {
			clear:both;
			width:100%;
		}

		.venue-main {
			width:100%;
		}
	
	.item {
		grid-template-columns: 1fr 3fr;
	}

		.item .links {
			grid-column: 2/3;
			grid-row: 2/3;
		}

		.item .links .cta {
			margin-bottom:0.5em;
		}
}

@media screen and (max-width:534px) {
	.venue-date {
		text-align: center;
	}

		.venue-date p,
		.my {
			width: 100%;
		}
}
            
@media screen and (max-width:479px) {
    .venue-main,
    .venue-buy{
        width:100%;
        clear:left;
        float: left;
    }
    
        .venue-buy a {
            float:left;
        }

    h1 {
    	font-size:4em;
    }

    .gallery {
		grid-template-columns: repeat(2,1fr);
	}

    .people {
		grid-template-columns:1fr;
	}

	.product .links {
		margin-bottom:0;
	}

		.product .links a {
			display:block;
			width:100%;
			text-align: center;
			margin-bottom:0.5em;
			margin-right:0;
		}

	.my,
	.day {
		width:100%;
	}

	.venue-main .day {
		font-size:2.8em;
	}

	.item {
		grid-template-columns: 1fr;
		grid-gap:1em;
	}

		.item .links {
			grid-row: unset;
			grid-column: unset;
		}
}