h2 {
	font-size: 1.6em;
	font-weight: 600;
	margin-top: 1.5em;
}

h3 {
	font-size: 1.3em;
	font-weight: 500;
	margin-top: 1.2em;
}

/* =========================
   PAGE CONTACT
   ========================= */
.cv-coordinates {
	padding: 10px 0;
	background: transparent;
}

.cv-contact-text {
	margin: 0 0 30px;
	max-width: 360px;
	color: #756d66;
	font-size: 17px;
	line-height: 1.7;
}

.cv-detail {
	padding: 0 0 22px;
	margin-bottom: 22px;
	border-bottom: 1px solid #e4dad1;
}

.cv-detail:last-child {
	margin-bottom: 0;
	border-bottom: none;
}

.cv-detail span {
	display: block;
	margin-bottom: 7px;
	color: #9a7b63;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.cv-detail p,
.cv-detail a {
	margin: 0;
	color: #2d2925;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 19px;
	line-height: 1.5;
	text-decoration: none;
}

/* COLONNE DROITE */
.cv-form-heading {
	margin-bottom: 26px;
}

.cv-form-heading h2 {
	margin: 0 0 10px;
	color: #2d2925;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 40px;
	font-weight: 400;
	line-height: 1.15;
}

.cv-form-heading p {
	margin: 0;
	max-width: 520px;
	color: #756d66;
	font-size: 15px;
	line-height: 1.7;
}

/* FORMULAIRE WORDPRESS */
.wp-block-jetpack-contact-form {
	margin-top: 0;
}

.wp-block-jetpack-contact-form label {
	color: #5f5750;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.wp-block-jetpack-contact-form input,
.wp-block-jetpack-contact-form textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 13px 14px;
	border: 1px solid #d9d1ca;
	border-radius: 0;
	background: #ffffff;
}

.wp-block-jetpack-contact-form textarea {
	min-height: 135px;
}

.wp-block-jetpack-contact-form button {
	margin-top: 10px;
	padding: 14px 24px;
	border: 1px solid #2d2925;
	border-radius: 0;
	background: #2d2925;
	color: #ffffff;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

@media (max-width: 781px) {
	.cv-coordinates {
		margin-bottom: 25px;
	}
	
	.cv-contact-text {
		margin-bottom: 25px;
		font-size: 16px;
	}
	
	.cv-form-heading h2 {
		font-size: 34px;
	}
}

/* =========================================
   FORMATION DANSEUR INTERPRÈTE
   VERSION CONSOLIDÉE
   ========================================= */
.cv-formation {
	width: 100%;
	background: var(--cvf-white);
	color: var(--cvf-text);
	font-family: Arial, Helvetica, sans-serif;
}

.cv-formation * {
	box-sizing: border-box;
}

.cv-formation .cvf-container {
	width: min(1120px, calc(100% - 48px));
	margin: 0 auto;
}

.cv-formation section {
	padding: 84px 0;
}

.cv-formation .cvf-eyebrow {
	margin: 0 0 14px;
	color: var(--cvf-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cv-formation h2,
.cv-formation h3 {
	margin-top: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
}

.cv-formation h2 {
	margin-bottom: 18px;
	font-size: clamp(38px, 5vw, 66px);
	line-height: 1.03;
	letter-spacing: -.045em;
}

.cv-formation h3 {
	margin-bottom: 12px;
	font-size: clamp(24px, 2.6vw, 32px);
	line-height: 1.2;
}

/* INTRODUCTION */
.cvf-hero {
	padding: 28px 0 55px;
	background: var(--cvf-white);
}

.cvf-signature {
	max-width: 860px;
	margin: 0 0 18px;
	color: #4c443e;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(23px, 3vw, 36px);
	font-style: italic;
	line-height: 1.45;
}

.cvf-lead {
	max-width: 760px;
	margin: 0;
	color: var(--cvf-muted);
	font-size: 18px;
	line-height: 1.8;
}

/* IMAGE — PAS DE RECADRAGE */
.cvf-hero-image {
	display: block;
	width: 100%;
	height: auto;
}

/* CYCLES */
.cvf-cycles {
	background: var(--cvf-ivory);
}

.cvf-cycle-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-top: 44px;
}

.cvf-cycle {
	padding: 34px 32px 32px;
	border: 1px solid var(--cvf-line);
	background: #ffffff;
}

.cvf-cycle:nth-child(2) {
	background: #f6f0ea;
}

.cvf-age {
	display: inline-block;
	margin-bottom: 22px;
	color: var(--cvf-accent);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.cvf-cycle > p {
	margin: 0;
	color: var(--cvf-muted);
	font-size: 16px;
	line-height: 1.8;
}

.cvf-cycle .cvf-hours {
	margin-top: 24px;
	padding-top: 18px;
	border-top: 1px solid var(--cvf-line);
	color: var(--cvf-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 18px;
}

/* EN SAVOIR PLUS */
.cvf-more {
	margin-top: 22px;
	border-top: 1px solid var(--cvf-line);
}

.cvf-more summary {
	position: relative;
	padding: 18px 28px 2px 0;
	color: var(--cvf-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	cursor: pointer;
	list-style: none;
}

.cvf-more summary::-webkit-details-marker {
	display: none;
}

.cvf-more summary::after {
	content: "+";
	position: absolute;
	right: 2px;
	top: 14px;
	color: var(--cvf-accent);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 22px;
	font-weight: 400;
}

.cvf-more[open] summary::after {
	content: "−";
}

.cvf-more-content {
	padding: 20px 0 4px;
}

.cvf-more-content p {
	margin: 0;
	color: #655d56;
	font-size: 15.5px;
	line-height: 1.8;
}

.cvf-more-content p + p {
	margin-top: 16px;
}

/* PHRASE MANIFESTE */
.cvf-manifesto {
	padding: 68px 0 !important;
	background: #ffffff;
}

.cvf-manifesto p {
	max-width: 920px;
	margin: 0 auto;
	color: #3b342f;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(27px, 4vw, 46px);
	font-style: italic;
	line-height: 1.45;
	text-align: center;
}

/* ACCOMPAGNEMENT */
.cvf-support {
	background: var(--cvf-soft);
}

.cvf-support-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-top: 42px;
}

.cvf-support-item {
	padding: 28px 30px;
	border: 1px solid var(--cvf-line);
	background: #ffffff;
}

.cvf-support-item h3 {
	margin-bottom: 12px;
	font-size: 24px;
}

.cvf-support-item p {
	margin: 0;
	color: var(--cvf-muted);
	font-size: 15.5px;
	line-height: 1.75;
}

.cvf-support-wide {
	grid-column: 1 / -1;
}

/* OBJECTIFS */
.cvf-objectives {
	background: var(--cvf-sand);
	padding-top: 78px !important;
	padding-bottom: 78px !important;
}

.cvf-objective-list {
	margin-top: 40px;
	border-top: 1px solid #d8cdc3;
}

.cvf-objective {
	display: grid;
	grid-template-columns: minmax(250px, .8fr) minmax(0, 1.2fr);
	gap: 36px;
	padding: 22px 0;
	border-bottom: 1px solid #d8cdc3;
}

.cvf-objective strong {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.35;
}

.cvf-objective p {
	margin: 0;
	color: #655d56;
	font-size: 15.5px;
	line-height: 1.75;
}

/* PROGRAMME */
.cvf-training {
	background: var(--cvf-ivory);
}

.cvf-discipline-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 40px;
}

.cvf-discipline {
	display: flex;
	align-items: center;
	min-height: 72px;
	padding: 18px 20px;
	border: 1px solid var(--cvf-gold);
	background: transparent;
}

.cvf-discipline span {
	color: var(--cvf-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 20px;
	line-height: 1.35;
}

/* PALMARÈS */
.cvf-palmares {
	background: #ffffff;
}

.cvf-palmares-grid {
	display: grid;
	grid-template-columns: .85fr 1.15fr;
	gap: 70px;
	align-items: start;
}

.cvf-palmares-content {
	padding-top: 8px;
}

.cvf-palmares-content p {
	max-width: 650px;
	margin: 0;
	color: #5f5750;
	font-size: 17px;
	line-height: 1.8;
}

.cvf-palmares-content p strong {
	color: var(--cvf-text);
	font-weight: 600;
}

.cvf-button {
	display: inline-block;
	margin-top: 28px;
	padding: 14px 22px;
	border: 1px solid var(--cvf-text);
	color: var(--cvf-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .14em;
	text-decoration: none;
	text-transform: uppercase;
}

/* ÉCOLES SUPÉRIEURES */
.cvf-schools {
	background: #eee6dd;
}

.cvf-schools-intro {
	max-width: 840px;
	margin: 0;
	color: #5f554d;
	font-size: 17px;
	line-height: 1.8;
}

.cvf-school-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 22px;
	margin-top: 34px;
	padding-top: 26px;
	border-top: 1px solid rgba(70, 55, 44, .18);
}

.cvf-school-list span {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 20px;
	line-height: 1.4;
}

.cvf-school-list span:not(:last-child)::after {
	content: "·";
	margin-left: 22px;
	color: var(--cvf-accent);
}

/* CANDIDATURES */
.cvf-candidature {
	background: var(--cvf-soft);
	color: var(--cvf-text);
}

.cvf-candidature-grid {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 66px;
	align-items: start;
}

.cvf-candidature h2 {
	color: var(--cvf-text);
}

.cvf-candidature p {
	margin: 0;
	color: var(--cvf-muted);
	font-size: 16px;
	line-height: 1.8;
}

.cvf-candidature p + p {
	margin-top: 16px;
}

.cvf-candidature p strong {
	color: var(--cvf-text);
}

.cvf-email {
	color: var(--cvf-accent);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.cvf-requirements {
	padding: 30px;
	border: 1px solid var(--cvf-gold);
	background: #ffffff;
	color: var(--cvf-text);
}

.cvf-requirements h3 {
	margin-bottom: 16px;
	color: var(--cvf-text);
	font-size: 28px;
}

.cvf-requirements ul {
	margin: 0;
	padding-left: 20px;
}

.cvf-requirements li {
	margin: 10px 0;
	color: var(--cvf-muted);
	line-height: 1.7;
}

.cvf-requirements li strong {
	color: var(--cvf-text);
}

/* TABLETTE */
@media (max-width: 900px) {
	.cv-formation section {
		padding: 64px 0;
	}
	
	.cv-formation .cvf-container {
		width: min(100% - 36px, 1120px);
	}
	
	.cvf-cycle-grid,
							  .cvf-palmares-grid,
							  .cvf-candidature-grid {
		grid-template-columns: 1fr;
	}
	
	.cvf-support-grid {
		grid-template-columns: 1fr;
	}
	
	.cvf-support-wide {
		grid-column: auto;
	}
	
	.cvf-objective {
		grid-template-columns: 1fr;
		gap: 8px;
	}
	
	.cvf-discipline-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* MOBILE */
@media (max-width: 560px) {
	.cvf-hero {
		padding: 20px 0 40px;
	}
	
	.cvf-cycle {
		padding: 28px 24px;
	}
	
	.cvf-discipline-grid {
		grid-template-columns: 1fr;
	}
	
	.cvf-school-list {
		display: block;
	}
	
	.cvf-school-list span {
		display: block;
		padding: 8px 0;
		border-bottom: 1px solid rgba(70, 55, 44, .12);
	}
	
	.cvf-school-list span:not(:last-child)::after {
		content: "";
	}
	
	.cvf-manifesto p {
		text-align: left;
	}
}

/* =========================================
   PAGE PROFESSEURS
   ACADÉMIE DE BALLET CALA VALDÉS
   ========================================= */
.cv-professeurs {
	width: 100%;
	background: var(--cvp-white);
	color: var(--cvp-text);
	font-family: Arial, Helvetica, sans-serif;
}

.cv-professeurs * {
	box-sizing: border-box;
}

.cv-professeurs .cvp-container {
	width: min(1120px, calc(100% - 48px));
	margin: 0 auto;
}

.cv-professeurs .cvp-eyebrow {
	margin: 0 0 14px;
	color: var(--cvp-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cv-professeurs h2,
.cv-professeurs h3 {
	margin-top: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
}

/* =========================================
   INTRODUCTION COMMUNE
   ========================================= */
.cvp-intro {
	padding: 52px 0 70px;
	background: var(--cvp-white);
}

.cvp-manifesto {
	max-width: 900px;
	margin: 16px 0 0;
	color: #443c36;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(22px, 2.3vw, 31px);
	line-height: 1.5;
	letter-spacing: -.015em;
}

/* =========================================
   PROFESSEURS
   ========================================= */
.cvp-professor {
	padding: 86px 0;
}

.cvp-jennifer {
	background: var(--cvp-ivory);
}

.cvp-dennis {
	background: #ffffff;
}

/* =========================================
   CARTE / STRUCTURE
   ========================================= */
.cvp-card {
	display: grid;
	grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr);
	gap: 66px;
	align-items: start;
}

.cvp-card-reverse {
	grid-template-columns: minmax(0, 1.22fr) minmax(300px, .78fr);
}

.cvp-card-reverse .cvp-photo {
	order: 2;
}

.cvp-card-reverse .cvp-content {
	order: 1;
}

/* =========================================
   PHOTOS
   ========================================= */
.cvp-photo {
	position: sticky;
	top: 40px;
}

.cvp-photo img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid var(--cvp-line);
}

/* =========================================
   TITRES & INFOS PRINCIPALES
   ========================================= */
.cvp-content h2 {
	margin: 0 0 14px;
	color: var(--cvp-text);
	font-size: clamp(39px, 5vw, 62px);
	line-height: 1.02;
	letter-spacing: -.045em;
}

.cvp-role {
	margin: 0;
	color: var(--cvp-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 20px;
	line-height: 1.4;
}

.cvp-role strong {
	font-weight: 400;
}

.cvp-companies {
	margin: 8px 0 0;
	color: var(--cvp-accent);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.65;
	letter-spacing: .04em;
}

.cvp-degree {
	margin: 18px 0 0;
	padding: 17px 0;
	border-top: 1px solid var(--cvp-line);
	border-bottom: 1px solid var(--cvp-line);
	color: #4a423c;
	font-size: 15px;
	line-height: 1.6;
}

.cvp-degree strong {
	font-weight: 600;
}

/* =========================================
   SECTIONS BIO
   ========================================= */
.cvp-section {
	margin-top: 42px;
}

.cvp-section h3 {
	margin-bottom: 18px;
	color: var(--cvp-text);
	font-size: 27px;
	line-height: 1.2;
}

.cvp-section p {
	margin: 0;
	color: var(--cvp-muted);
	font-size: 15.5px;
	line-height: 1.82;
}

.cvp-section p + p {
	margin-top: 17px;
}

.cvp-section strong {
	color: #403833;
	font-weight: 600;
}

/* =========================================
   APPROCHE PÉDAGOGIQUE
   ========================================= */
.cvp-pedagogy {
	margin-top: 44px;
	padding: 30px 32px;
	border: 1px solid var(--cvp-gold);
	background: var(--cvp-white);
}

.cvp-dennis .cvp-pedagogy {
	background: var(--cvp-ivory);
}

/* =========================================
   EN SAVOIR PLUS — JENNIFER
   ========================================= */
.cvp-more {
	margin-top: 30px;
	border-top: 1px solid var(--cvp-line);
	border-bottom: 1px solid var(--cvp-line);
}

.cvp-more summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: var(--cvp-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	cursor: pointer;
	list-style: none;
}

.cvp-more summary::-webkit-details-marker {
	display: none;
}

.cvp-more summary::after {
	content: "+";
	position: absolute;
	right: 5px;
	top: 12px;
	color: var(--cvp-accent);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 27px;
	font-weight: 400;
}

.cvp-more[open] summary::after {
	content: "−";
}

.cvp-more-content {
	padding: 2px 0 24px;
}

.cvp-more-content p {
	margin: 0;
	max-width: 760px;
	color: var(--cvp-muted);
	font-size: 15.5px;
	line-height: 1.82;
}

.cvp-more-content strong {
	color: #403833;
}

/* =========================================
   DIFFÉRENCIATION DES DEUX ÉCOLES
   ========================================= */
.cvp-jennifer .cvp-eyebrow {
	color: #9a7b63;
}

.cvp-dennis .cvp-eyebrow {
	color: #8b705d;
}

/* =========================================
   TABLETTE
   ========================================= */
@media (max-width: 900px) {
	.cv-professeurs .cvp-container {
		width: min(100% - 36px, 1120px);
	}
	
	.cvp-intro {
		padding: 42px 0 58px;
	}
	
	.cvp-manifesto {
		font-size: 22px;
		line-height: 1.5;
	}
	
	.cvp-professor {
		padding: 66px 0;
	}
	
	.cvp-card,
					  .cvp-card-reverse {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	
	.cvp-card-reverse .cvp-photo,
					  .cvp-card-reverse .cvp-content {
		order: initial;
	}
	
	.cvp-photo {
		position: static;
		max-width: 520px;
	}
	
	.cvp-photo img {
		width: 100%;
		height: auto;
	}
}

/* =========================================
   MOBILE
   ========================================= */
@media (max-width: 560px) {
	.cv-professeurs .cvp-container {
		width: calc(100% - 30px);
	}
	
	.cvp-intro {
		padding: 30px 0 46px;
	}
	
	.cvp-manifesto {
		font-size: 20px;
		line-height: 1.5;
		letter-spacing: -.01em;
	}
	
	.cvp-professor {
		padding: 54px 0;
	}
	
	.cvp-card,
					  .cvp-card-reverse {
		gap: 32px;
	}
	
	.cvp-photo {
		width: 100%;
		max-width: none;
	}
	
	.cvp-photo img {
		width: 100%;
		height: auto;
	}
	
	.cvp-content h2 {
		font-size: 40px;
	}
	
	.cvp-role {
		font-size: 18px;
	}
	
	.cvp-companies {
		font-size: 12px;
	}
	
	.cvp-pedagogy {
		padding: 24px 22px;
	}
	
	.cvp-section {
		margin-top: 36px;
	}
	
	.cvp-section h3 {
		font-size: 25px;
	}
	
	.cvp-section p,
					  .cvp-more-content p {
		font-size: 15px;
	}
}

/* =========================================
   PAGE D'ACCUEIL
   ACADÉMIE DE BALLET CALA VALDÉS
   ========================================= */
.cv-home {
	width: 100%;
	background: var(--cvh-white);
	color: var(--cvh-text);
	font-family: Arial, Helvetica, sans-serif;
}

.cv-home * {
	box-sizing: border-box;
}

.cv-home img {
	display: block;
	width: 100%;
}

.cv-home a {
	text-decoration: none;
}

.cvh-container {
	width: min(1120px, calc(100% - 48px));
	margin: 0 auto;
}

.cvh-section {
	padding: 90px 0;
}

.cvh-eyebrow {
	margin: 0 0 14px;
	color: var(--cvh-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.cv-home h1,
.cv-home h2,
.cv-home h3 {
	margin-top: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
	color: var(--cvh-text);
}

.cv-home h1 {
	margin-bottom: 24px;
	font-size: clamp(48px, 6vw, 78px);
	line-height: 1.02;
	letter-spacing: -.045em;
}

.cv-home h2 {
	margin-bottom: 24px;
	font-size: clamp(38px, 4.8vw, 62px);
	line-height: 1.05;
	letter-spacing: -.04em;
}

.cv-home h3 {
	margin-bottom: 14px;
	font-size: 28px;
	line-height: 1.2;
}

/* =========================================
   BOUTONS
   ========================================= */
.cvh-button {
	display: inline-block;
	padding: 14px 22px;
	border: 1px solid var(--cvh-text);
	color: var(--cvh-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
	transition: all .25s ease;
}

.cvh-button:hover {
	background: var(--cvh-text);
	color: #ffffff;
}

.cvh-button-dark {
	background: var(--cvh-text);
	color: #ffffff;
}

.cvh-button-dark:hover {
	background: transparent;
	color: var(--cvh-text);
}

.cvh-button-light {
	border-color: rgba(255,255,255,.78);
	color: #ffffff;
}

.cvh-button-light:hover {
	background: #ffffff;
	color: var(--cvh-text);
}

.cvh-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 26px;
}

/* =========================================
   HERO
   ========================================= */
.cvh-hero {
	position: relative;
	min-height: 760px;
	overflow: hidden;
	background: #111;
}

.cvh-hero-image {
	position: absolute;
}

.cvh-hero-image::after {
	content: "";
	position: absolute;
	background: linear-gradient(90deg,
      rgba(14, 15, 15, .72) 0%,
      rgba(14, 15, 15, .48) 45%,
      rgba(14, 15, 15, .15) 100%);
}

.cvh-hero-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 75%;
}

.cvh-hero-content {
	position: relative;
	z-index: 2;
	width: min(1120px, calc(100% - 48px));
	min-height: 760px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	color: #ffffff;
}

.cvh-hero .cvh-eyebrow {
	color: rgba(255,255,255,.8);
}

.cvh-hero h1 {
	max-width: 820px;
	color: #ffffff;
}

.cvh-hero-text {
	max-width: 770px;
	margin: 0;
	color: rgba(255,255,255,.92);
	font-size: 17px;
	line-height: 1.75;
}

.cvh-hero-text strong {
	font-weight: 500;
}

.cvh-disciplines-inline {
	margin: 24px 0 30px;
	color: rgba(255,255,255,.82);
	font-size: 13px;
	line-height: 1.75;
	letter-spacing: .04em;
}

/* =========================================
   NOS PARCOURS
   ========================================= */
.cvh-parcours {
	background: var(--cvh-ivory);
}

.cvh-parcours > .cvh-container > h2 {
	margin-bottom: 44px;
}

.cvh-parcours-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.cvh-parcours-card {
	border: 1px solid var(--cvh-line);
	background: #ffffff;
}

.cvh-parcours-image {
	height: 410px;
	overflow: hidden;
}

.cvh-parcours-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cvh-parcours-content {
	padding: 30px 30px 34px;
}

.cvh-parcours-content h3 {
	margin-bottom: 16px;
	color: var(--cvh-accent);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .14em;
}

.cvh-parcours-content p {
	margin: 0;
	color: var(--cvh-muted);
	font-size: 16px;
	line-height: 1.75;
}

/* =========================================
   NOS DISCIPLINES
   ========================================= */
.cvh-disciplines {
	background: #ffffff;
}

.cvh-discipline-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 38px;
	border-top: 1px solid var(--cvh-line);
	border-left: 1px solid var(--cvh-line);
}

.cvh-discipline-list span {
	min-height: 82px;
	display: flex;
	align-items: center;
	padding: 18px 20px;
	border-right: 1px solid var(--cvh-line);
	border-bottom: 1px solid var(--cvh-line);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 20px;
	line-height: 1.3;
}

.cvh-disciplines-image {
	margin-top: 46px;
	max-height: 620px;
	overflow: hidden;
}

.cvh-disciplines-image img {
	width: 100%;
	height: 620px;
	object-fit: cover;
}

/* =========================================
   ÉQUIPE PÉDAGOGIQUE
   ========================================= */
.cvh-team {
	background: var(--cvh-soft);
}

.cvh-team-grid {
	display: grid;
	grid-template-columns: .95fr 1.05fr;
	gap: 70px;
	align-items: center;
}

.cvh-team-image {
	overflow: hidden;
}

.cvh-team-image img {
	width: 100%;
	height: auto;
}

.cvh-team-content h2 {
	max-width: 660px;
	font-size: clamp(36px, 4.3vw, 56px);
}

.cvh-team-text {
	max-width: 650px;
	margin: 0 0 28px;
	color: #5c554f;
	font-size: 17px;
	line-height: 1.8;
}

.cvh-team-text strong {
	color: var(--cvh-text);
	font-weight: 500;
}

/* =========================================
   NOS ÉLÈVES
   ========================================= */
.cvh-students {
	background: #ffffff;
}

.cvh-students-grid {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 70px;
	align-items: center;
}

.cvh-students-content {
	max-width: 540px;
}

.cvh-students-text {
	margin: 0 0 28px;
	color: #5e5751;
	font-size: 17px;
	line-height: 1.8;
}

.cvh-students-text strong {
	font-weight: 500;
	color: var(--cvh-text);
}

.cvh-students-image {
	overflow: hidden;
}

.cvh-students-image img {
	width: 100%;
	height: auto;
}

/* =========================================
   LE STUDIO
   ========================================= */
.cvh-studio {
	background: var(--cvh-sand);
}

.cvh-studio-heading {
	max-width: 760px;
	margin-bottom: 44px;
}

.cvh-studio-grid {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 40px;
	align-items: stretch;
}

.cvh-studio-image {
	min-height: 560px;
	overflow: hidden;
}

.cvh-studio-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cvh-studio-features {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border-top: 1px solid var(--cvh-gold);
	border-left: 1px solid var(--cvh-gold);
}

.cvh-studio-feature {
	min-height: 180px;
	padding: 26px;
	border-right: 1px solid var(--cvh-gold);
	border-bottom: 1px solid var(--cvh-gold);
	background: rgba(255,255,255,.28);
}

.cvh-studio-feature h3 {
	margin-bottom: 8px;
	font-size: 22px;
}

.cvh-studio-feature p {
	margin: 0;
	color: #655d56;
	font-size: 15px;
	line-height: 1.65;
}

/* =========================================
   GALERIE
   ========================================= */
.cvh-gallery {
	background: #ffffff;
}

.cvh-gallery-grid {
	display: grid;
	grid-template-columns: 1.15fr .85fr .85fr;
	grid-template-rows: 290px 290px;
	gap: 16px;
	margin-top: 40px;
}

.cvh-gallery-grid figure {
	margin: 0;
	overflow: hidden;
}

.cvh-gallery-grid figure:first-child {
	grid-row: 1 / 3;
}

.cvh-gallery-grid figure:last-child {
	grid-column: 2 / 4;
}

.cvh-gallery-grid img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s ease;
}

.cvh-gallery-grid figure:hover img {
	transform: scale(1.025);
}

/* =========================================
   REJOIGNEZ L'ACADÉMIE
   ========================================= */
.cvh-join {
	display: grid;
	grid-template-columns: 1.1fr .9fr;
	background: var(--cvh-ivory);
}

.cvh-join-image {
	min-height: 620px;
	overflow: hidden;
}

.cvh-join-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cvh-join-content {
	padding: 70px 7vw;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.cvh-join-content h2 {
	margin-bottom: 22px;
}

.cvh-join-main {
	margin: 0 0 16px;
	font-size: 17px;
	line-height: 1.75;
}

.cvh-join-content > p:not(.cvh-eyebrow):not(.cvh-join-main) {
	margin: 0;
	color: var(--cvh-muted);
	font-size: 16px;
	line-height: 1.75;
}

/* =========================================
   TABLETTE
   ========================================= */
@media (max-width: 900px) {
	.cvh-container,
				  .cvh-hero-content {
		width: min(100% - 36px, 1120px);
	}
	
	.cvh-section {
		padding: 68px 0;
	}
	
	.cvh-hero,
				  .cvh-hero-content {
		min-height: 680px;
	}
	
	.cvh-parcours-grid,
				  .cvh-team-grid,
				  .cvh-students-grid,
				  .cvh-studio-grid,
				  .cvh-join {
		grid-template-columns: 1fr;
	}
	
	.cvh-team-grid,
				  .cvh-students-grid {
		gap: 42px;
	}
	
	.cvh-parcours-image {
		height: 360px;
	}
	
	.cvh-discipline-list {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.cvh-disciplines-image img {
		height: 480px;
	}
	
	.cvh-studio-image {
		min-height: 460px;
	}
	
	.cvh-gallery-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 390px 240px 240px;
	}
	
	.cvh-gallery-grid figure:first-child {
		grid-column: 1 / 3;
		grid-row: auto;
	}
	
	.cvh-gallery-grid figure:last-child {
		grid-column: 1 / 3;
	}
	
	.cvh-join-image {
		min-height: 500px;
	}
}

/* =========================================
   MOBILE
   ========================================= */
@media (max-width: 560px) {
	.cvh-container,
				  .cvh-hero-content {
		width: calc(100% - 30px);
	}
	
	.cvh-section {
		padding: 56px 0;
	}
	
	.cv-home h1 {
		font-size: 44px;
		line-height: 1.04;
	}
	
	.cv-home h2 {
		font-size: 36px;
		line-height: 1.08;
	}
	
	.cv-home h3 {
		font-size: 24px;
	}
	
	.cvh-eyebrow {
		font-size: 10px;
	}
	
	/* HERO */
	.cvh-hero,
				  .cvh-hero-content {
		min-height: 700px;
	}
	
	.cvh-hero-image::after {
		background: linear-gradient(180deg,
				        rgba(14, 15, 15, .18) 0%,
				        rgba(14, 15, 15, .45) 42%,
				        rgba(14, 15, 15, .82) 100%);
	}
	
	.cvh-hero-content {
		justify-content: flex-end;
		padding-bottom: 55px;
	}
	
	.cvh-hero-text {
		font-size: 15px;
		line-height: 1.65;
	}
	
	.cvh-disciplines-inline {
		margin: 18px 0 24px;
		font-size: 12px;
		line-height: 1.65;
	}
	
	/* PARCOURS */
	.cvh-parcours > .cvh-container > h2 {
		margin-bottom: 30px;
	}
	
	.cvh-parcours-grid {
		gap: 20px;
	}
	
	.cvh-parcours-image {
		height: 300px;
	}
	
	.cvh-parcours-content {
		padding: 24px 22px 28px;
	}
	
	/* DISCIPLINES */
	.cvh-discipline-list {
		grid-template-columns: 1fr;
		margin-top: 28px;
	}
	
	.cvh-discipline-list span {
		min-height: 64px;
		font-size: 18px;
	}
	
	.cvh-disciplines-image {
		margin-top: 32px;
	}
	
	.cvh-disciplines-image img {
		height: 380px;
	}
	
	/* ÉQUIPE */
	.cvh-team-grid {
		gap: 30px;
	}
	
	.cvh-team-content h2 {
		font-size: 34px;
	}
	
	.cvh-team-text {
		font-size: 15px;
		line-height: 1.7;
	}
	
	/* ÉLÈVES */
	.cvh-students-grid {
		gap: 30px;
	}
	
	.cvh-students-text {
		font-size: 15px;
		line-height: 1.7;
	}
	
	/* STUDIO */
	.cvh-studio-heading {
		margin-bottom: 30px;
	}
	
	.cvh-studio-image {
		min-height: 360px;
	}
	
	.cvh-studio-features {
		grid-template-columns: 1fr;
	}
	
	.cvh-studio-feature {
		min-height: auto;
		padding: 22px;
	}
	
	/* GALERIE */
	.cvh-gallery-grid {
		display: block;
		margin-top: 30px;
	}
	
	.cvh-gallery-grid figure {
		height: 250px;
		margin-bottom: 12px;
	}
	
	.cvh-gallery-grid figure:first-child {
		height: 360px;
	}
	
	/* INSCRIPTIONS */
	.cvh-join-image {
		min-height: 390px;
	}
	
	.cvh-join-content {
		padding: 48px 22px 54px;
	}
	
	.cvh-buttons {
		flex-direction: column;
	}
	
	.cvh-buttons .cvh-button {
		width: 100%;
		text-align: center;
	}
}

/* =========================================================
   CADRAGE PHOTO HERO — ORDINATEUR / MOBILE
   PHOTO ORIGINALE ENTIÈRE CONSERVÉE DANS L'HTML
   ========================================================= */
/* =========================================================
   ORDINATEUR
   On conserve le cadrage qui fonctionnait
   ========================================================= */
@media (min-width: 601px) {
	.cv-home .cvh-hero-image {
		position: absolute !important;
		width: 100% !important;
		height: 100% !important;
		overflow: hidden !important;
	}
	
	.cv-home .cvh-hero-image img {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	/* Cadrage ordinateur conservé */
		object-position: center 50% !important;
	}
}

/* =========================================================
   HERO ACCUEIL — MOBILE
   ESSAI CIBLÉ : MOINS DE PLUMES / POINTE VISIBLE
   ========================================================= */
@media (max-width: 600px) {
	/* HERO GLOBAL */
	.cv-home .cvh-hero {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		overflow: hidden !important;
		background: #111111 !important;
	}
	
	/* =====================================================
	     PHOTO
	     ===================================================== */
	.cv-home .cvh-hero-image {
		position: relative !important;
		width: 100% !important;
	/* Un peu moins haut que précédemment */
		height: 590px !important;
		overflow: hidden !important;
	}
	
	.cv-home .cvh-hero-image img {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	/*
	       On privilégie davantage le HAUT de la photo :
	       cela coupe une plus grande partie du sol
	       tout en gardant la pointe.
	    */
		object-position: center 18% !important;
	}
	
	/* =====================================================
	     BLOC NOIR
	     ===================================================== */
	.cv-home .cvh-hero-content {
		position: static !important;
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 38px 28px 48px !important;
		background: #111111 !important;
		transform: none !important;
	}
	
	/* =====================================================
	     ÉCOLE DE DANSE — EN HAUT DE LA PHOTO
	     ===================================================== */
	.cv-home .cvh-hero .cvh-eyebrow {
		position: absolute !important;
		top: 50px !important;
		left: 28px !important;
		right: 28px !important;
		z-index: 10 !important;
		margin: 0 !important;
		color: #ffffff !important;
		font-size: 10px !important;
		font-weight: 600 !important;
		line-height: 1.5 !important;
		letter-spacing: .18em !important;
		text-transform: uppercase !important;
	}
	
	/* =====================================================
	     GRAND TITRE — PARTIE BASSE DE LA PHOTO
	     ===================================================== */
	.cv-home .cvh-hero h1 {
		position: absolute !important;
		top: 340px !important;
		left: 28px !important;
		right: 28px !important;
		z-index: 10 !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		color: #ffffff !important;
		font-size: 40px !important;
		font-weight: 400 !important;
		line-height: .98 !important;
		letter-spacing: -.035em !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
	}
	
	/* =====================================================
	     TEXTE DANS LE NOIR
	     ===================================================== */
	.cv-home .cvh-hero-text {
		position: static !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 0 24px !important;
		padding: 0 !important;
		font-size: 16px !important;
		line-height: 1.65 !important;
	}
	
	/* DISCIPLINES */
	.cv-home .cvh-disciplines-inline {
		position: static !important;
		margin: 0 0 30px !important;
		padding: 0 !important;
		font-size: 13px !important;
		line-height: 1.7 !important;
	}
	
	/* BOUTON */
	.cv-home .cvh-hero .cvh-button {
		position: static !important;
		margin-top: 0 !important;
	}
}

/* ==========================================================
   PAGE STUDIO — ACADÉMIE DE BALLET CALA VALDÉS
   ========================================================== */
.cvs-page {
	overflow: hidden;
	background: var(--cvs-background);
	color: var(--cvs-text);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 17px;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
}

.cvs-page * {
	box-sizing: border-box;
}

.cvs-page img {
	display: block;
	width: 100%;
	height: auto;
}

.cvs-page a {
	color: inherit;
}

.cvs-container {
	width: min(calc(100% - 40px), var(--cvs-max-width));
}

/* ==========================================================
   HERO
   ========================================================== */
.cvs-hero {
	padding: 120px 0 72px;
	text-align: center;
}

.cvs-eyebrow {
	margin: 0 0 22px;
	color: var(--cvs-accent);
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.cvs-page h1,
.cvs-page h2,
.cvs-page h3 {
	margin-top: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
	line-height: 1.12;
}

.cvs-hero h1 {
	margin-bottom: 22px;
	font-size: clamp(3rem, 7vw, 6rem);
	letter-spacing: -.045em;
}

.cvs-hero h2 {
	margin-bottom: 28px;
	font-size: clamp(1.7rem, 3vw, 2.7rem);
}

.cvs-hero-text {
	max-width: 720px;
	margin: 0 auto;
	color: var(--cvs-muted);
	font-size: 1.05rem;
}

/* ==========================================================
   GRANDE PHOTO DU STUDIO
   ========================================================== */
.cvs-studio-image {
	width: min(calc(100% - 40px), 1380px);
	margin: 0 auto;
	aspect-ratio: 16 / 8.6;
	overflow: hidden;
	background: #e9e6e0;
}

.cvs-studio-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* ==========================================================
   ÉQUIPEMENTS
   ========================================================== */
.cvs-content-section {
	padding: 128px 0;
}

.cvs-section-heading {
	max-width: 780px;
	margin-bottom: 74px;
}

.cvs-section-heading h2 {
	margin-bottom: 0;
	font-size: clamp(2.3rem, 5vw, 4.5rem);
	letter-spacing: -.035em;
}

.cvs-features {
	border-top: 1px solid var(--cvs-line);
}

.cvs-feature {
	display: grid;
	grid-template-columns: minmax(180px, 0.8fr) minmax(0, 1.65fr);
	gap: 80px;
	padding: 62px 0;
	border-bottom: 1px solid var(--cvs-line);
}

.cvs-feature-label {
	margin: 5px 0 0;
	color: var(--cvs-accent);
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.cvs-feature h3 {
	margin-bottom: 22px;
	font-size: clamp(1.8rem, 3vw, 3rem);
}

.cvs-feature p {
	max-width: 720px;
	margin: 0;
	color: var(--cvs-muted);
}

.cvs-feature p + p {
	margin-top: 20px;
}

/* ==========================================================
   ACCÈS
   ========================================================== */
.cvs-location {
	padding: 116px 0 130px;
	background: var(--cvs-surface);
}

.cvs-location-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 90px;
	align-items: end;
}

.cvs-location h2 {
	margin-bottom: 24px;
	font-size: clamp(2.3rem, 5vw, 4.5rem);
	letter-spacing: -.035em;
}

.cvs-address {
	margin: 0;
	color: var(--cvs-muted);
	font-style: normal;
}

.cvs-address strong {
	display: block;
	margin-bottom: 10px;
	color: var(--cvs-text);
	font-weight: 500;
}

.cvs-route-wrap {
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}

.cvs-route-link {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 15px 0 11px;
	border-bottom: 1px solid var(--cvs-text);
	text-decoration: none;
	transition: gap 180ms ease, opacity 180ms ease;
}

.cvs-route-link:hover,
.cvs-route-link:focus-visible {
	gap: 18px;
	opacity: .7;
}

/* ==========================================================
   MOBILE
   ========================================================== */
@media (max-width: 760px) {
	.cvs-page {
		font-size: 16px;
	}
	
	.cvs-container,
				  .cvs-studio-image {
		width: min(calc(100% - 28px), var(--cvs-max-width));
	}
	
	.cvs-hero {
		padding: 82px 0 52px;
	}
	
	.cvs-studio-image {
		aspect-ratio: 4 / 3;
	}
	
	.cvs-content-section {
		padding: 86px 0;
	}
	
	.cvs-section-heading {
		margin-bottom: 48px;
	}
	
	.cvs-feature {
		grid-template-columns: 1fr;
		gap: 14px;
		padding: 44px 0;
	}
	
	.cvs-location {
		padding: 82px 0 92px;
	}
	
	.cvs-location-grid {
		grid-template-columns: 1fr;
		gap: 42px;
	}
	
	.cvs-route-wrap {
		justify-content: flex-start;
	}
}

/* PETITES PHOTOS DANS LA COLONNE DE GAUCHE */
.cvs-feature-side {
	width: 100%;
}

.cvs-feature-thumb {
	width: 100%;
	max-width: 260px;
	margin-top: 24px;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #ece9e3;
}

.cvs-feature-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* MOBILE */
@media (max-width: 760px) {
	.cvs-feature-thumb {
		max-width: 100%;
		margin-top: 18px;
	}
}

/* TITRE PRINCIPAL — FORMATION DANSEUR INTERPRÈTE */
.cvf-eyebrow {
	margin: 0 0 18px;
	color: #9a7f68;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
	text-align: center;
}

.cvf-title {
	margin: 0 0 32px;
	color: #292521;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(52px, 7vw, 96px);
	font-weight: 400;
	letter-spacing: -.05em;
	line-height: 1.02;
	text-align: center;
}

/* TITRE PRINCIPAL — ÉQUIPE PÉDAGOGIQUE */
.cvp-eyebrow {
	margin: 0 0 16px;
	color: #9a7f68;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cvp-title {
	margin: 0 0 48px;
	color: #292521;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(48px, 6vw, 82px);
	font-weight: 400;
	letter-spacing: -.045em;
	line-height: 1.05;
}

/* =========================================================
   PAGE — LES COURS PROPOSÉS
   ========================================================= */
.cv-cours {
	width: min(1240px, 100%);
	margin: 0 auto;
	background: #ffffff;
	color: #302923;
	font-family: Arial, Helvetica, sans-serif;
}

.cv-cours * {
	box-sizing: border-box;
}

/* HERO */
.cvc-hero {
	padding: 86px 28px 72px;
	background: #ffffff;
}

.cvc-container {
	width: 100%;
}

.cvc-eyebrow {
	margin: 0 0 14px;
	color: #a1846b;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cvc-hero h1 {
	margin: 0;
	color: #302923;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(54px, 8vw, 104px);
	font-weight: 400;
	line-height: .96;
	letter-spacing: -.055em;
}

/* DISCIPLINES */
.cvc-disciplines {
	padding: 8px 28px 110px;
}

.cvc-discipline {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
	align-items: center;
	gap: 64px;
	padding: 74px 0;
	border-top: 1px solid #e8dfd7;
}

.cvc-discipline.cvc-reverse {
	grid-template-columns: minmax(320px, 0.8fr) minmax(0, 1.2fr);
}

.cvc-reverse .cvc-media {
	order: 2;
}

.cvc-reverse .cvc-content {
	order: 1;
}

/* PHOTOS */
.cvc-media {
	overflow: hidden;
}

.cvc-media img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

/* TEXTES */
.cvc-content {
	padding: 8px 0;
}

.cvc-content h2 {
	margin: 0 0 24px;
	color: #302923;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(38px, 4.6vw, 62px);
	font-weight: 400;
	line-height: 1.03;
	letter-spacing: -.035em;
}

.cvc-content p {
	margin: 0;
	color: #6b625a;
	font-size: 17px;
	line-height: 1.9;
}

.cvc-content strong {
	color: #342d27;
	font-weight: 600;
}

/* MOBILE */
@media (max-width: 820px) {
	.cvc-hero {
		padding: 64px 22px 50px;
	}
	
	.cvc-disciplines {
		padding: 0 22px 74px;
	}
	
	.cvc-discipline,
				  .cvc-discipline.cvc-reverse {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 54px 0;
	}
	
	.cvc-reverse .cvc-media,
				  .cvc-reverse .cvc-content {
		order: initial;
	}
	
	.cvc-media img {
		aspect-ratio: 4 / 3;
	}
	
	.cvc-content p {
		font-size: 16px;
		line-height: 1.8;
	}
}

/* =========================================================
   LIEN VERS LE PLANNING
   ========================================================= */
.cvc-planning {
	padding: 90px 28px 100px;
	border-top: 1px solid #e8dfd7;
	text-align: center;
}

.cvc-planning-eyebrow {
	margin: 0 0 16px;
	color: #a1846b;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cvc-planning h2 {
	margin: 0 0 38px;
	color: #302923;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(38px, 5vw, 60px);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -.035em;
}

.cvc-planning-button {
	display: inline-block;
	padding: 15px 24px;
	border: 1px solid #302923;
	color: #302923;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .14em;
	text-decoration: none;
	transition: background 180ms ease, color 180ms ease;
}

.cvc-planning-button:hover {
	background: #302923;
	color: #ffffff;
}

/* =========================================================
   PAGE GALERIE
   ACADÉMIE DE BALLET CALA VALDÉS
   ========================================================= */
.cv-gallery-page {
	width: 100%;
	overflow: hidden;
	background: var(--cvg-bg);
	color: var(--cvg-text);
	font-family: Arial, Helvetica, sans-serif;
}

.cv-gallery-page * {
	box-sizing: border-box;
}

.cv-gallery-page img {
	display: block;
	width: 100%;
}

.cvg-container {
	width: min(1180px, calc(100% - 48px));
	margin: 0 auto;
}

/* =========================================================
   INTRODUCTION
   ========================================================= */
.cvg-hero {
	padding: 100px 0 72px;
	background: #ffffff;
}

.cvg-eyebrow {
	margin: 0 0 16px;
	color: var(--cvg-accent);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cvg-hero h1 {
	max-width: 900px;
	margin: 0;
	color: var(--cvg-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(52px, 7vw, 92px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: -.05em;
}

.cvg-intro {
	max-width: 650px;
	margin: 28px 0 0;
	color: var(--cvg-muted);
	font-size: 17px;
	line-height: 1.8;
}

/* =========================================================
   GALERIE
   ========================================================= */
.cvg-gallery {
	padding: 20px 0 110px;
}

.cvg-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-auto-flow: dense;
	gap: 18px;
}

.cvg-item {
	grid-column: span 6;
	margin: 0;
	overflow: hidden;
	background: #eee9e3;
}

.cvg-item img {
	width: 100%;
	height: 100%;
	min-height: 390px;
	object-fit: cover;
	transition: transform .5s ease;
}

.cvg-item:hover img {
	transform: scale(1.018);
}

/* GRANDE PHOTO HORIZONTALE */
.cvg-wide {
	grid-column: 1 / -1;
}

.cvg-wide img {
	min-height: 560px;
}

/* PHOTO PORTRAIT */
.cvg-portrait {
	grid-column: span 5;
}

.cvg-portrait img {
	min-height: 650px;
}

/* GRANDE PHOTO VERTICALE */
.cvg-tall {
	grid-column: span 7;
}

.cvg-tall img {
	min-height: 720px;
}

/* =========================================================
   FIN DE PAGE / CTA
   ========================================================= */
.cvg-cta {
	padding: 100px 0 110px;
	background: var(--cvg-soft);
	text-align: center;
}

.cvg-cta .cvg-eyebrow {
	margin-bottom: 18px;
}

.cvg-cta h2 {
	margin: 0;
	color: var(--cvg-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(42px, 5.5vw, 70px);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -.04em;
}

.cvg-buttons {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin-top: 38px;
}

.cvg-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 14px 22px;
	border: 1px solid var(--cvg-text);
	color: var(--cvg-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background .2s ease, color .2s ease;
}

.cvg-button:hover {
	background: var(--cvg-text);
	color: #ffffff;
}

.cvg-button-dark {
	background: var(--cvg-text);
	color: #ffffff;
}

.cvg-button-dark:hover {
	background: transparent;
	color: var(--cvg-text);
}

/* =========================================================
   TABLETTE
   ========================================================= */
@media (max-width: 900px) {
	.cvg-container {
		width: min(100% - 36px, 1180px);
	}
	
	.cvg-hero {
		padding: 78px 0 58px;
	}
	
	.cvg-gallery {
		padding-bottom: 80px;
	}
	
	.cvg-grid {
		gap: 14px;
	}
	
	.cvg-item,
			  .cvg-portrait,
			  .cvg-tall {
		grid-column: span 6;
	}
	
	.cvg-wide {
		grid-column: 1 / -1;
	}
	
	.cvg-item img {
		min-height: 330px;
	}
	
	.cvg-wide img {
		min-height: 460px;
	}
	
	.cvg-portrait img,
			  .cvg-tall img {
		min-height: 520px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 600px) {
	.cvg-container {
		width: calc(100% - 28px);
	}
	
	.cvg-hero {
		padding: 66px 0 50px;
	}
	
	.cvg-eyebrow {
		font-size: 10px;
	}
	
	.cvg-hero h1 {
		font-size: clamp(46px, 15vw, 64px);
	}
	
	.cvg-intro {
		margin-top: 22px;
		font-size: 16px;
		line-height: 1.7;
	}
	
	/* GALERIE MOBILE */
	.cvg-gallery {
		padding: 10px 0 65px;
	}
	
	.cvg-grid {
		display: block;
	}
	
	.cvg-item,
			  .cvg-wide,
			  .cvg-portrait,
			  .cvg-tall {
		width: 100%;
		margin-bottom: 14px;
	}
	
	.cvg-item img {
		width: 100%;
		height: auto;
		min-height: 0;
		object-fit: initial;
	}
	
	/* CTA */
	.cvg-cta {
		padding: 72px 0 78px;
	}
	
	.cvg-buttons {
		flex-direction: column;
		align-items: stretch;
		margin-top: 30px;
	}
	
	.cvg-button {
		width: 100%;
	}
}

/* TITRE PRINCIPAL — CONTACT */
.cv-contact-hero {
	margin-bottom: 54px;
}

.cv-contact-eyebrow {
	margin: 0 0 16px;
	color: #9a7f68;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cv-contact-title {
	margin: 0 0 28px;
	color: #292521;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(52px, 7vw, 90px);
	font-weight: 400;
	letter-spacing: -.05em;
	line-height: 1.02;
}

/* =========================================================
   PAGE PLANNING 2026-2027
   ACADÉMIE DE BALLET CALA VALDÉS
   ========================================================= */
.cv-planning {
	width: 100%;
	overflow: hidden;
	background: var(--cvpl-bg);
	color: var(--cvpl-text);
	font-family: Arial, Helvetica, sans-serif;
}

.cv-planning * {
	box-sizing: border-box;
}

.cvpl-container {
	width: min(1180px, calc(100% - 48px));
	margin: 0 auto;
}

/* =========================================================
   INTRODUCTION
   ========================================================= */
.cvpl-hero {
	padding: 100px 0 72px;
	background: #ffffff;
}

.cvpl-eyebrow {
	margin: 0 0 16px;
	color: var(--cvpl-accent);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cvpl-hero h1 {
	max-width: 1000px;
	margin: 0;
	color: var(--cvpl-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(52px, 7vw, 92px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: -.05em;
}

.cvpl-intro {
	max-width: 680px;
	margin: 28px 0 0;
	color: var(--cvpl-muted);
	font-size: 17px;
	line-height: 1.8;
}

/* =========================================================
   PLANNING
   ========================================================= */
.cvpl-planning-section {
	padding: 15px 0 105px;
	background: #ffffff;
}

.cvpl-planning-image {
	width: 100%;
	max-width: 1050px;
	margin: 0 auto;
}

.cvpl-planning-image img {
	display: block;
	width: 100%;
	height: auto;
}

.cvpl-note {
	max-width: 1050px;
	margin: 30px auto 0;
	padding-top: 24px;
	border-top: 1px solid var(--cvpl-line);
	color: var(--cvpl-muted);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 17px;
	font-style: italic;
	line-height: 1.6;
	text-align: center;
}

/* =========================================================
   COURS PARTICULIERS / DEMANDES SPÉCIFIQUES
   ========================================================= */
.cvpl-contact {
	padding: 100px 0 110px;
	background: var(--cvpl-soft);
}

.cvpl-contact-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.85fr);
	gap: 90px;
	align-items: start;
}

.cvpl-contact h2 {
	max-width: 650px;
	margin: 0;
	color: var(--cvpl-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(42px, 5vw, 66px);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -.04em;
}

.cvpl-contact-content {
	padding-top: 29px;
}

.cvpl-contact-content > p {
	max-width: 570px;
	margin: 0;
	color: var(--cvpl-muted);
	font-size: 17px;
	line-height: 1.85;
}

/* =========================================================
   BOUTON + TÉLÉPHONE
   ========================================================= */
.cvpl-contact-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 28px;
	margin-top: 36px;
}

.cvpl-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 14px 24px;
	border: 1px solid var(--cvpl-text);
	color: var(--cvpl-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .13em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background .2s ease, color .2s ease;
}

.cvpl-button-dark {
	background: var(--cvpl-text);
	color: #ffffff;
}

.cvpl-button-dark:hover {
	background: transparent;
	color: var(--cvpl-text);
}

.cvpl-phone {
	padding-bottom: 4px;
	border-bottom: 1px solid var(--cvpl-text);
	color: var(--cvpl-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 19px;
	text-decoration: none;
	transition: opacity .2s ease;
}

.cvpl-phone:hover {
	opacity: .6;
}

/* =========================================================
   TABLETTE
   ========================================================= */
@media (max-width: 900px) {
	.cvpl-container {
		width: min(100% - 36px, 1180px);
	}
	
	.cvpl-hero {
		padding: 78px 0 58px;
	}
	
	.cvpl-planning-section {
		padding-bottom: 78px;
	}
	
	.cvpl-contact {
		padding: 78px 0 85px;
	}
	
	.cvpl-contact-grid {
		grid-template-columns: 1fr;
		gap: 38px;
	}
	
	.cvpl-contact-content {
		padding-top: 0;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 600px) {
	.cvpl-container {
		width: calc(100% - 28px);
	}
	
	.cvpl-hero {
		padding: 66px 0 48px;
	}
	
	.cvpl-eyebrow {
		font-size: 10px;
	}
	
	.cvpl-hero h1 {
		font-size: clamp(44px, 13vw, 62px);
	}
	
	.cvpl-intro {
		margin-top: 22px;
		font-size: 16px;
		line-height: 1.7;
	}
	
	/* PLANNING */
	.cvpl-planning-section {
		padding: 5px 0 65px;
	}
	
	.cvpl-planning-image {
		width: 100%;
	}
	
	.cvpl-planning-image img {
		width: 100%;
		height: auto;
	}
	
	.cvpl-note {
		margin-top: 22px;
		padding-top: 20px;
		font-size: 15px;
	}
	
	/* DEMANDES SPÉCIFIQUES */
	.cvpl-contact {
		padding: 68px 0 74px;
	}
	
	.cvpl-contact-grid {
		gap: 30px;
	}
	
	.cvpl-contact h2 {
		font-size: clamp(38px, 11vw, 52px);
	}
	
	.cvpl-contact-content > p {
		font-size: 16px;
		line-height: 1.75;
	}
	
	.cvpl-contact-links {
		flex-direction: column;
		align-items: stretch;
		gap: 22px;
		margin-top: 30px;
	}
	
	.cvpl-button {
		width: 100%;
	}
	
	.cvpl-phone {
		align-self: flex-start;
	}
}

/* =========================================================
   PAGE PALMARÈS
   ACADÉMIE DE BALLET CALA VALDÉS
   ========================================================= */
.cv-palmares {
	width: 100%;
	overflow: hidden;
	background: var(--cvpalm-bg);
	color: var(--cvpalm-text);
	font-family: Arial, Helvetica, sans-serif;
}

.cv-palmares * {
	box-sizing: border-box;
}

.cv-palmares img {
	display: block;
	width: 100%;
}

.cvpalm-container {
	width: min(1180px, calc(100% - 48px));
	margin: 0 auto;
}

/* =========================================================
   INTRODUCTION
   ========================================================= */
.cvpalm-hero {
	padding: 100px 0 90px;
	background: #ffffff;
}

.cvpalm-eyebrow {
	margin: 0 0 16px;
	color: var(--cvpalm-accent);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cvpalm-hero h1 {
	max-width: 900px;
	margin: 0;
	color: var(--cvpalm-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(52px, 7vw, 92px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: -.05em;
}

.cvpalm-intro {
	max-width: 720px;
	margin: 30px 0 0;
	color: var(--cvpalm-muted);
	font-size: 17px;
	line-height: 1.8;
}

/* =========================================================
   LISTE DES ÉLÈVES
   ========================================================= */
.cvpalm-list {
	width: min(1180px, calc(100% - 48px));
	margin: 0 auto;
	padding-bottom: 120px;
}

.cvpalm-student {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
	gap: 76px;
	align-items: center;
	padding: 76px 0;
	border-top: 1px solid var(--cvpalm-line);
}

.cvpalm-student.cvpalm-reverse {
	grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1.05fr);
}

.cvpalm-reverse .cvpalm-media {
	order: 2;
}

.cvpalm-reverse .cvpalm-content {
	order: 1;
}

/* =========================================================
   PHOTOS
   ========================================================= */
.cvpalm-media {
	overflow: hidden;
	background: #eee9e3;
}

.cvpalm-media img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

/* =========================================================
   TEXTE ÉLÈVE
   ========================================================= */
.cvpalm-content {
	padding: 8px 0;
}

.cvpalm-name {
	margin: 0 0 18px;
	color: var(--cvpalm-accent);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.cvpalm-content h2 {
	max-width: 560px;
	margin: 0;
	color: var(--cvpalm-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(38px, 4.5vw, 62px);
	font-weight: 400;
	line-height: 1.06;
	letter-spacing: -.035em;
}

.cvpalm-location {
	margin: 24px 0 0;
	color: var(--cvpalm-muted);
	font-size: 15px;
	letter-spacing: .05em;
}

/* =========================================================
   CTA FORMATION
   ========================================================= */
.cvpalm-cta {
	padding: 100px 0 110px;
	background: var(--cvpalm-soft);
	text-align: center;
}

.cvpalm-cta h2 {
	max-width: 760px;
	margin: 0 auto;
	color: var(--cvpalm-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(42px, 5.5vw, 70px);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -.04em;
}

.cvpalm-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 38px;
	min-height: 50px;
	padding: 14px 24px;
	border: 1px solid var(--cvpalm-text);
	color: var(--cvpalm-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .13em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background .2s ease, color .2s ease;
}

.cvpalm-button:hover {
	background: var(--cvpalm-text);
	color: #ffffff;
}

/* =========================================================
   TABLETTE
   ========================================================= */
@media (max-width: 900px) {
	.cvpalm-container,
			  .cvpalm-list {
		width: min(100% - 36px, 1180px);
	}
	
	.cvpalm-hero {
		padding: 78px 0 70px;
	}
	
	.cvpalm-student,
			  .cvpalm-student.cvpalm-reverse {
		grid-template-columns: 1fr 1fr;
		gap: 42px;
		padding: 60px 0;
	}
	
	.cvpalm-content h2 {
		font-size: clamp(34px, 4.8vw, 48px);
	}
}

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 600px) {
	.cvpalm-container,
			  .cvpalm-list {
		width: calc(100% - 28px);
	}
	
	.cvpalm-hero {
		padding: 66px 0 56px;
	}
	
	.cvpalm-eyebrow {
		font-size: 10px;
	}
	
	.cvpalm-hero h1 {
		font-size: clamp(44px, 13vw, 62px);
	}
	
	.cvpalm-intro {
		margin-top: 22px;
		font-size: 16px;
		line-height: 1.7;
	}
	
	/* ÉLÈVES */
	.cvpalm-list {
		padding-bottom: 74px;
	}
	
	.cvpalm-student,
			  .cvpalm-student.cvpalm-reverse {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 52px 0;
	}
	
	.cvpalm-reverse .cvpalm-media,
			  .cvpalm-reverse .cvpalm-content {
		order: initial;
	}
	
	.cvpalm-media img {
		width: 100%;
		height: auto;
		aspect-ratio: auto;
		object-fit: initial;
	}
	
	.cvpalm-name {
		margin-bottom: 14px;
		font-size: 10px;
	}
	
	.cvpalm-content h2 {
		font-size: clamp(34px, 10vw, 48px);
		line-height: 1.08;
	}
	
	.cvpalm-location {
		margin-top: 18px;
		font-size: 14px;
	}
	
	/* CTA */
	.cvpalm-cta {
		padding: 72px 0 80px;
	}
	
	.cvpalm-cta h2 {
		font-size: clamp(38px, 11vw, 52px);
	}
	
	.cvpalm-button {
		width: 100%;
		margin-top: 30px;
	}
}

/* MASQUER LES ANCIENS TITRES WORDPRESS */
.page-id-2 .entry-title,
.page-id-4 .entry-title,
.page-id-120 .entry-title,
.page-id-123 .entry-title,
.page-id-146 .entry-title,
.page-id-579 .entry-title,
.page-id-1109 .entry-title,
.page-id-1278 .entry-title,
.page-id-1451 .entry-title,
.page-id-2655 .entry-title {
	display: none !important;
}






.main-navigation li {
    margin-top: 6px;
    margin-bottom: 6px;
}





.site-info {
    display: none !important;
}