/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

:root {
	--white: var(--theme-palette-color-2);
	--black: var(--theme-palette-color-3);
	--pink: var(--theme-palette-color-1);
	--grey: var(--theme-palette-color-7);
	--light-grey: var(--theme-palette-color-6);
}

@font-face {
  	font-family: 'Courage';
  	src: url('/wp-content/themes/blocksy-child/assets/fonts/courage/courage-variable.otf') format('opentype');
	font-weight: 900;
  	font-style: normal;
  	font-display: swap;
}

@font-face {
	font-family: 'Stevie Sans';
  	src: url('/wp-content/themes/blocksy-child/assets/fonts/stevie-sans/stevie-sans-regular.ttf') format('truetype');
	font-weight: 400;
  	font-style: normal;
  	font-display: swap;
}


@font-face {
	font-family: 'Stevie Sans Bold';
  	src: url('/wp-content/themes/blocksy-child/assets/fonts/stevie-sans/stevie-sans-bold.ttf') format('truetype');
	font-weight: 700;
  	font-style: normal;
  	font-display: swap;
}

:root {
	--primary-title-font-family: 'Courage', 'Roboto', sans-serif;
	--secondary-title-font-family: 'Stevie Sans Bold', 'Roboto', sans-serif;
	--theme-font-family: 'Stevie Sans', 'Roboto', sans-serif;
	--e-a-font-family: 'Stevie Sans', 'Roboto', sans-serif;
}

h1 {
	font-family: var(--primary-title-font-family) !important;
}

h2, h3, h4, h5, h6 {
	font-family: var(--secondary-title-font-family) !important;
}

.elementor-page .elementor-button:hover, .single-content .wp-block-button__link:hover, .ct-header-cta:hover .contact-menu-btn, .shows__link:hover, .wpcf7-submit:hover {
	transform: scale(1.03) !important;
}

.ct-header-cta {
	margin: 0 !important;
}

.ct-header-cta .contact-menu-btn {
	font-size: 16px !important;
	padding: 9px 14px !important;
}

body:not(.elementor-editor-active) .hidden {
	display: none !important;
}

/** SLIDER **/
.slider {
	position: relative;
	max-width: 100%;
}

.slider__container {
	position: sticky;
	width: 100%;
	top: 103px;
	border-radius: 10px;
	overflow: hidden;
	height: calc(100vh - var(--header-height) - 85px) !important;
}

.slider__container * {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	transform: scale(1.1) translatey(20px);
}

:is(.slider__bg, .slider__fg) img {
	object-fit: cover;
}

.slider__fg {
	position: absolute;
	top: 0;
	width: 100%;
}

.elementor-slider-container :is(.elementor-widget-shortcode, .elementor-shortcode, .slider) {
	height: 100%;
}

@media (max-width: 991px) {
	.slider__container {
		height: calc(70vh - var(--header-height) + 40px) !important;
		position: fixed;
		width: calc(100% - 10vw);
	}
	.slider {
		height: calc(70vh - var(--header-height)) !important;
		
	}
	
	.grandient-container::after {
		content: "";
		height: 105px;
        width: calc(100% + 20px);
		position: absolute;
        left: 50%;
		top: -95px;
        transform: translateX(-50%);
        background-image: linear-gradient(180deg, transparent 0%, var(--theme-palette-color-2) 90%);
	}
}

@media (max-width: 767px) {
	.slider__container {
		width: calc(var(--theme-container-width) - 2px);
	}
} 


/** AGENDA **/
.agenda {
	display: flex;
	flex-direction: column;
}

.agenda__group {
	padding: 0;
	list-style: none;
}

.agenda__item {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 12px 15px;
	background-color: var(--theme-palette-color-2);
	border-radius: 5px;
	color: var(--black);
}

.page-id-113 .agenda {
	padding: 50px;
	border-radius: 20px;
	background-color: var(--theme-palette-color-6);
}

.agenda__wrapper {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.page-id-113 .agenda__wrapper {
	flex-direction: row;
	flex-wrap: wrap;	
}

.page-id-113 .agenda__item {
	width: calc((100% / 3) - 20px);
}

.agenda__item p {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 8px;
}

.agenda__item p svg {
	width: 15px;
	height: 15px;
}

.agenda__date {
	display: flex;
	flex-direction: column;
	gap: 4px;
	align-items: center;
	padding-right: 15px;
	border-right: 1px solid #BEB8BC; 
}

.agenda__date--day {
	font-size: 30px;
	font-weight: 900;	
}

.agenda__date--month {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 1.2px;
	font-weight: 700;
	color: #A7A2A6;
	line-height: 1;
}

.agenda__info * {
	flex-shrink: 0;
}

.agenda__subtitle {
	font-weight: 800;
	color: #9A9599;
	font-size: 14px;
	margin-bottom: 5px !important;
	text-transform: capitalize;
}

.agenda__filters {
	display: flex;
	gap: 9px;
	margin-bottom: 15px;
}

.agenda__filter {
	padding: 8px 16px !important;
	font-size: 22px !important;
	font-weight: 900 !important;
	background-color: transparent !important;
	border: 2px solid var(--theme-palette-color-1) !important;
	cursor: pointer;
}

.agenda__filter--selected {
	background-color: var(--theme-palette-color-1) !important;
}

.agenda__items, .year-group {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.year-group .month-group:not(:last-child) {
	margin-bottom: 15px;
}

.agenda .year-group {
	display: none;
}

.agenda .year-group--shown {
	display: block;
}

@media (max-width: 1250px) {
	.page-id-113 .agenda__item {
		width: calc(50% - 20px);
	}
}

@media (max-width: 800px) {
	.page-id-113 .agenda {
		padding: 30px;
		gap: 10px;
	}
	
	.page-id-113 .agenda__item {
		width: 100%;
	}
}

@media (max-width: 991px) {
	.agenda__filter {
		font-size: 17px !important;
		padding: 4px 15px !important;
	}
}

@media (max-width: 767px) {
	.agenda__item {
		padding: 10px 12px !important;
	}
	
	.agenda__filters {
		gap: 5px;
		flex-wrap: wrap;
	}
}

@media (max-width: 430px) {
	.agenda__filter {
		flex: 1 1 calc(50% - 5px);
		max-width: calc(50% - 5px);
	}
}

.menu-item-1298 .ct-menu-link {
	color: var(--black) !important;
}

.menu-item-1298:hover .ct-menu-link {
	color: var(--pink) !important;
}

/** ELEMENTOR **/
.contact-section .elementor-heading-title span {
	color: var(--theme-palette-color-1);
}

.page-heading-container {
	max-width: 2000px !important;
    margin: 0 auto !important;
    width: calc(100% - 40px) !important;
}

@media (max-width: 991px) {
	.page-heading-container {
		width: 100% !important;
		max-width: 100% !important;
	}
}
	


/** ANIMATION **/
.animate-item-1 {
	animation: presentation-shrink 0.7s ease !important;
	transform-origin: top left !important;
	animation-delay: 2s !important;
	animation-fill-mode: forwards !important;
}

.animate-item-2 {
	animation: presentation-slide 0.7s ease !important;
	animation-delay: 2s !important;
	animation-fill-mode: forwards !important;
}


@media (max-width: 767px) {
	.animate-item-1 {
		transform-origin: center center !important;
	}
}

@keyframes presentation-shrink {
	from {
		background-color: var(--e-global-color-blocksy_palette_2);
		transform: scale(1);
	}
	
	to {
		background-color: var(--theme-palette-color-6);
		transform: scale(0.85);
	}
}

@keyframes presentation-shrink-mobile {
	from {
		background-color: var(--e-global-color-blocksy_palette_2); !important;
		transform: scale(1);
	}
	
	to {
		background-color: var(--theme-palette-color-6) !important;
		transform: scale(0.9);
	}
}

@keyframes presentation-slide {
	from {
		transform: perspective(var(--e-con-transform-perspective, 0)) rotate(var(--e-con-transform-rotateZ, 0)) rotateX(var(--e-con-transform-rotateX, 0)) rotateY(var(--e-con-transform-rotateY, 0)) translate(var(--e-con-transform-translate, 0)) translateX(60vw) translateY(var(--e-con-transform-translateY, 0)) scaleX(calc(var(--e-con-transform-flipX, 1) * var(--e-con-transform-scaleX, var(--e-con-transform-scale, 1)))) scaleY(calc(var(--e-con-transform-flipY, 1) * var(--e-con-transform-scaleY, var(--e-con-transform-scale, 1)))) skewX(var(--e-con-transform-skewX, 0)) skewY(var(--e-con-transform-skewY, 0));
    	transform-origin: var(--e-con-transform-origin-y) var(--e-con-transform-origin-x);
	}
	
	to {
		transform: perspective(var(--e-con-transform-perspective, 0)) rotate(var(--e-con-transform-rotateZ, 0)) rotateX(var(--e-con-transform-rotateX, 0)) rotateY(var(--e-con-transform-rotateY, 0)) translate(var(--e-con-transform-translate, 0)) translateX(0) translateY(var(--e-con-transform-translateY, 0)) scaleX(calc(var(--e-con-transform-flipX, 1) * var(--e-con-transform-scaleX, var(--e-con-transform-scale, 1)))) scaleY(calc(var(--e-con-transform-flipY, 1) * var(--e-con-transform-scaleY, var(--e-con-transform-scale, 1)))) skewX(var(--e-con-transform-skewX, 0)) skewY(var(--e-con-transform-skewY, 0));
	}
}

.icon-row > .elementor-icon-box-wrapper {
	flex-direction: row !important;
}

.icon-row > .elementor-icon-box-content p {
	text-align: left !important;
}

.spectacles__image {
	background-color: transparent !important;
}

.form form {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.form:not(.newsletter) form {
	gap: 15px;
}

.form .form-flex p {
	display: flex;
	justify-content: space-between;
	gap: 12px;
}

.form .form-flex label {
	margin: 0;
}

.form .form-info {
	margin-top: 20px;
}

.form .form-flex br, .form .form-flex ::after {
	display: none;
}

.form :is([type=text], [type=email]) {
	height: 35px !important;
}

.form :is(input, textarea) {
	border: 1px solid #D3CCD1 !important;
	border-radius: 4px !important;
	font-weight: 400 !important;
	color: var(--theme-palette-color-3) !important;
}

.form :is(label, p) {
	color: #7B767A !important;
}

.form label {
	font-weight: 500 !important;
}

.form .wpcf7-submit {
	padding: 10px 20px !important;
	border-radius: 500px !important;
	border: none !important;
}

.form .form-submit {
	position: relative;
	width: fit-content;
}

.form:not(.newsletter) .wpcf7-submit {
	padding: 10px 40px 10px 20px !important;
}

.form:not(.newsletter) .form-submit::after {
	content: url('/wp-content/uploads/2025/09/arrow-right-black.svg');
	position: absolute;
	top: 55%;
	left: 87px;
	transform: translatey(-50%);
}

.wpcf7 form .wpcf7-response-output {
	border-radius: 500px;
    margin: 10px 0px !important;
    width: fit-content;
}

@media (max-width: 767px) {
	.form form {
		gap: 10px;
	}
	
	.form .form-flex p {
		flex-direction: column;
	}
	
	.form .wpcf7-acceptance span {
		font-size: 14px !important;
	}
}

@media (min-width: 992px) {
	.form textarea.wpcf7-form-control {
		min-height: 255px !important;
	}
}

.date-anim-container .date-item {
	opacity: 0;
}

/** SPECTACLES **/
.shows {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.shows__card {
	display: flex;
	border: 2px solid var(--theme-palette-color-6);
	border-radius: 10px;
	height: 190px;
	opacity: 0;
}

:is([data-category="deambulation"], [data-category="creation-sur-mesure"], [data-type="actions-artistiques"]) .shows__card {
	height: 150px;
}

.shows__thumbnail {
	flex: 1;
	border-radius: 10px;
	overflow: hidden;
	z-index: 2;
	transform: scale(1.01);
	min-height: 100%;
}

.shows__thumbnail img {
	height: 100% !important;
	width: 100%;
	object-fit: cover;
}

.shows__details {
	flex: 1.8;
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 30px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    flex-direction: column;
    justify-content: flex-end;
}

[data-type="actions-artistiques"] .shows__details {
	gap: 0;
}

.shows__content ul {
	margin: 0;
}

.page-id-315 .shows__content ul {
	list-style: none;
	padding: 0;
}

.shows__header {
	display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 20px;
}

.shows__title {
	font-size: 22px !important;
	margin-block-end: 0 !important;
}

.shows__duration {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--e-global-color-text);
}

.shows__duration svg {
	width: 15px;
	height: 15px;
}

.shows__duration svg path {
	fill: var(--e-global-color-text);
}

.shows__content {
	color: var(--e-global-color-text);
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	width: 100%;
}

.shows__link {
	display: flex;
	align-items: center;
	color: var(--theme-palette-color-3);
	width: fit-content;
	gap: 10px;
	padding: 8px 20px;
	border-radius: 500px;
	background-color: var(--theme-palette-color-1);
}

.shows__link:hover {
	color: var(--black);
}

.shows__link, .shows__link path {
	transition: 0.3s;
}

@media (min-width: 992px) {
	.shows__title {
		max-width: 300px;
	}
}

@media (max-width: 991px) {
	.shows__card {
		height: 230px;
	}
	
	:is([data-category="deambulation"], [data-category="creation-sur-mesure"], [data-type="actions-artistiques"]) .shows__card {
		height: 190px;
	}
	
	[data-type="actions-artistiques"] .shows__title {
		margin-bottom: 10px;
	}
	
	.shows__details {
		flex: 1.2;	
	}
	
	.shows__content {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
}

@media (max-width: 767px) {
	.shows__card, :is([data-category="deambulation"], [data-category="creation-sur-mesure"], [data-type="actions-artistiques"]) .shows__card {
		flex-direction: column;
		height: fit-content;
	}
	
	[data-type="actions-artistiques"] .shows__details {
		gap: 10px;
	}
	
	.shows__details {
		gap: 10px;
		padding: 20px;
	}
	
	.shows__content {
		gap: 15px;
	}
	
	.shows__link {
		padding: 11px 20px;
	}
}

/** SINGLE SPECTACLE **/
.single-banner {
	width: 100%;
}

.single-banner__frame {
	width: calc(100% - 40px);
	max-width: 2000px;
	margin: 0 auto;
	padding: 50px 50px 75px 50px;
	border-radius: 10px;
	overflow: hidden;
	min-height: 650px;
	display: flex;
	align-items: flex-end;
	position: relative;
}

.single-banner__frame::after {
	content: "";
	width: 100%;
	height: 100%;
	opacity: 0.7;
	position: absolute;
	top: 0;
	left: 0;
	background-image: linear-gradient(180deg, #24202300 35%, #242023 85%);
}

.single-banner__above-title {
	text-transform: uppercase;	
	font-weight: 600;
	letter-spacing: 3.5px;
	margin-block-end: 0px;
	color: var(--white);
	margin-bottom: 0px;
}

.single-banner__content {
	width: 100%;
	max-width: 690px;
	margin: 0 auto;
	z-index: 3;
}

.single-banner__content h1 {
	color: var(--white);
	margin: 0;
	line-height: 1;
}

.single-banner__metas {	
	color: var(--white);
	margin: 15px 0 0 0;	
	display: flex;
	align-items: center;
	gap: 8px;
	margin-block-end: 0;
}

.single-banner__metas span::before {
	content: "•";
}

@media (max-width: 991px) {
	.single-banner__frame::after {
		background-image: linear-gradient(180deg, #24202300 45%, #242023 70%);
	}
}

@media (max-width: 767px) {
	.single-banner__metas {
		align-items: flex-start;
		flex-direction: column;
		gap: 0;
	}
}

@media (min-width: 768px) {
	.single-banner__metas span:first-child::before {
		display: none;
	}
}

.single-banner__metas span {
	display: flex; 
	gap: 8px;
	align-items: center;
}

.single-content {
	padding: 75px 0;
}

.single-content :is(.wp-block-heading, p, .wp-block-embed, .wp-block-buttons) {
	width: 100%;
	max-width: 690px;
	margin-left: auto;
	margin-right: auto;
}

.single-content .wp-block-gallery {
	max-width: 2000px;
    margin: 0 auto;
    padding: 20px;
	gap: 20px !important;
	display: flex;
	flex-wrap: wrap;
}

.single-content .wp-block-gallery .wp-block-image, .single-content .wp-block-embed {
	border-radius: 10px;
	overflow: hidden;
}

.single-content .wp-block-button__link {
	color: var(--black);
	padding: 8px 20px !important;
	border-radius: 500px;
	overflow: hidden;
}

.single-content .wp-block-button__link:hover {
	color: var(--black);
	background: var(--pink);
}

.single-download {
	position: fixed;
	left: 50%;
	transform: translateX(-50%);
	bottom: 75px;
	z-index: 10;
	display: flex;
	align-items: center;
	color: var(--theme-palette-color-3);
	width: fit-content;
	gap: 8px;
	padding: 8px 20px;
	border-radius: 500px;
	background-color: var(--theme-palette-color-1);
	white-space: nowrap;
}

.single-download svg {
	height: 18px;
	width: 18px;
}

.single-download, .single-download path {
	transition: 0.3s;
}

.single-download:hover {
	color: var(--theme-palette-color-2);
}

.single-download:hover svg path {
	stroke: var(--theme-palette-color-2);
}

@media (min-width: 992px) {
	.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
		width: calc(33.33% - 20px);
	}
	
	.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image) {
        width: 100%;
    }
	
	.wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image) {
        width: calc(50% - 20px);
    }
	
	.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) {
        width: calc(33.333333% - 20px);
    }
	
    .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) {
        width: calc(25% - 20px);
    }
	
	.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image) {
        width: calc(20% - 20px);
    }
	
	.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image) {
        width: calc(16.66666% - 20px);
    }
	
	.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image) {
        width: calc(14.28571% - 20px);
    }
}

@media (max-width: 991px) {
	.single-banner__frame {
		width: 100%;
		border-radius: 0;
		padding: 30px 30px 50px 30px;
		min-height: 450px;
	}
	
	.single-banner h1 {
		font-size: 60px;
	}
	
	.single-content {
		padding: 50px 0;
	}
	
	.single-content .wp-block-gallery .wp-block-image {
		width: calc(50% - 20px) !important;
	}
	
	.single-content .wp-block-spacer[style="height:100px"] {
		height: 50px !important;
	}
}


@media (max-width: 767px) {
	.single-banner__frame {
		min-height: 350px;
	}
	
	.single-banner h1 {
		font-size: 36px;
	}
	
	.single-content {
		padding: 50px 20px;
	}
	
	.single-content .wp-block-gallery {
		padding: 0;
	}
	
	.single-content .wp-block-gallery .wp-block-image {
		width: calc(100% - 20px) !important;
	}
}

.contact-section {
	transition: 0.5s;
}

.contact-section:hover {
	background-size: 115% auto !important;
}

/** FOOTER **/
footer#footer{
	padding-bottom: 20px !important;
}

footer, footer [data-row] {
	background-color: transparent !important;
}

footer [data-row] > .ct-container {
	border: 2px solid var(--theme-palette-color-6);
	border-top: 2px solid var(--theme-palette-color-6) !important;
}

footer [data-row="middle"] .ct-container {
	background-color: var(--theme-palette-color-2);
}

footer [data-row="middle"] > .ct-container {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	margin-top: -10px !important;
}

footer [data-row="bottom"] {
	transform: translateY(-10px);
}

footer [data-row="bottom"] > .ct-container {
	background-color: var(--theme-palette-color-6);
	border-radius: 10px;
}

footer .widget-menu {
	font-size: 14px !important;
}

footer .widget-menu li:not(:last-child) {
	margin-bottom: 3px !important;
}

footer #block-39 p {
	display: none;
}

.footer-socials {
	display: flex; 
	gap: 10px; 
	align-items: center;
	margin-block-end: 0 !important;
}

.footer-socials a {
	display: block;
}

footer .agency-credits, footer .agency-credits p, footer .agency-credits:hover {
	display: flex;
	align-items: center;
	column-gap: 8px;
	line-height: 1.5 !important;
	flex-wrap: wrap;
	color: var(--black);
}

footer .agency-credits p {
	font-weight: 600;
}

.grecaptcha-badge {
	display: none;
}