

/* === Utilitaires génériques === */
.flex {
    display: flex;
    flex-wrap: wrap;
}

.column-100 {
    width: 100%;
}

.column-50 {
    width: 100%;
}

body h1, body h2, body h3 {
    font-family: "Texta", Sans-serif;
    color: #333F48;
}

.content-anacours {
    display: flex;
    flex-direction: column;
    gap: 60px;
}

.section {
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.6s ease-out;
    padding: 0 25px;
}

.section.visible {
    opacity: 1;
    transform: translateY(0);
}

.titre-jaune {
    color: #DEAB16;
}

@media (min-width: 769px) {
    .content-anacours {
        display: flex;
        flex-direction: column;
        gap: 80px;
        padding: 0;
    }
}
@media (min-width: 1024px) {
    .content-anacours {
        padding: 0;
    }
}

/* === Utilitaires génériques fin === */



/* === Boutons CTA === */

.cta-btn {
    display: inline-block;
    background-color: #007eb6;
    border: 1px solid #007eb6;
    font-family: texta, sans-serif;
    color: #fff;
    padding: 10px 20px;
    border-radius: 0;
    text-decoration: none;
    text-align: center;
    transition: background-color 0.3s ease;
    transition: all 0.6s ease;
    font-size: clamp(14px, 2vw, 20px);
}

.cta-btn:hover {
    background-color: transparent;
    color: #007aab;
    box-shadow: rgba(0, 0, 0, 0.16) -5px  10px 0;

}
/* === Boutons CTA fin === */


/* === CTA sticky === */

.anacours-cta-sticky{
    display: none;
}
.anacours-cta-bottom-left{
    display: none;
}

@media (min-width: 769px) {

    .section {
        padding: 0;
    }
    .anacours-cta-sticky {
        display: auto;
        position: fixed;
        right: 0;
        top: 30%;
        z-index: 9999;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
    .anacours-cta-sticky .cta-icon,
    .anacours-cta-sticky .cta-main-btn {
        font-family: texta, sans-serif;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 60px;
        height: 60px;
        background: #333;
        color: white;
        border-radius: 8px;
        text-decoration: none;
        transition: background 0.2s ease;
    }
    .anacours-cta-sticky .cta-main-btn {
        font-family: texta, sans-serif;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: 60px;
        height: 60px;
        background: #007eb6;
        color: #fff;
        font-size: 14px;
        text-transform: uppercase;
        border-radius: 0;
        overflow: hidden;
        white-space: nowrap;
        transition: width 0.3s ease, padding 0.3s ease;
        padding: 0; /* sans texte au départ */
        position: relative;
    }
    .anacours-cta-sticky .cta-main-btn::before {
        content: "📝";
        display: inline-block;
        font-size: 23px;
        width: 60px;
        text-align: center;
        flex-shrink: 0;
    }
    .anacours-cta-sticky .cta-main-btn span {
        opacity: 0;
        margin-left: 0;
        transition: opacity 0.2s ease, margin-left 0.2s ease;
    }
    .anacours-cta-sticky .cta-main-btn:hover {
        width: 220px;
        padding: 0 12px;
    }
    .anacours-cta-sticky .cta-main-btn:hover span {
        opacity: 1;
        margin-left: 8px;
    }
    
    .anacours-cta-bottom-left {
        position: fixed;
        display: flex;
        bottom: 30px;
        left: 20px;
        z-index: 9999;
    }
    .anacours-cta-bottom-left .cta-bottom-btn {
        display: inline-block;
        background: #333;
        color: #fff;
        font-family: texta, sans-serif;
        font-weight: 700;
        font-size: 14px;
        text-transform: uppercase;
        padding: 12px 16px;
        border-radius: 0px;
        border: 1px solid #333;
        text-decoration: none;
        transition: background 0.6s ease;
    }
    .anacours-cta-bottom-left .cta-bottom-btn:hover {
        background: transparent;
        border : 1px solid #333;
        color: #333;
    }
}
/* === CTA sticky fin === */



/* === Fil d'Ariane === */

.filAriane {
    color: #333F48;
    font-family: "Texta", Sans-serif;
    font-size: 16px;
    padding: 15px 25px;
}

.filAriane ul {
    padding : 0;
}

.filAriane a {
    color: #333F48;
    font-family: "Texta", Sans-serif;
    font-size: 16px;
    text-decoration: underline;
}

@media (min-width: 769px) {
    .filAriane {
        padding-top: 15px;;
        padding-left: 50px;
        margin: 0;
    }
}
@media  (min-width: 1024px) {
    .filAriane {
        padding-left: 50px;
    }
    
}
@media (min-width: 1450px){
    .filAriane {
        padding-left: 80px;
    }
}
/* === Fil d'Ariane fin === */



/* === Bloc Header Instrument === */
.bloc-header-instrument {
    background-color: #c3edf2;
}

.bloc-header-container {
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    align-items: stretch;
}

.bloc-header-image {
    width: 100%;
    height: auto;
    overflow: hidden;
    clip-path: none;
}

.bloc-header-image img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
}

.bloc-header-content {
    width: 100%;
    padding: 50px 20px;
}

.bloc-header-content h1,
.bloc-header-content h2 {
    font-size: clamp(28px, 3vw, 51px);
    line-height: 1.1;
    margin: 0;
    font-weight: 900;
}

.bloc-header-content .h1 {
    text-transform: uppercase;
    color: #333f48;
}

.bloc-header-content .h2 {
    color: #406a80;
}

.bloc-header-content p {
    font-size: clamp(14px, 1vw, 18px);
    font-family: texta, sans-serif;
    margin-top: 10px;
    margin-bottom: 20px;
}

@media (min-width: 769px) {
    .bloc-header-container {
        flex-direction: row;
        max-height: 500px;
    }

    .bloc-header-content,
    .bloc-header-image {
        width: 50%;
    }

    .bloc-header-image {
        clip-path: polygon(40% 0, 100% 0, 100% 100%, 0% 100%);
        height: 100%;
    }

    .bloc-header-image img {
        height: 100%;
        object-fit: cover;
    }

    .bloc-header-content {
        padding: 50px;
    }
}

@media (min-width: 1450px) {
    .bloc-header-content {
        padding: 80px;
    }
}
/* === Bloc Header Instrument fin === */



/* === Bloc Avantages Anacours === */
.bloc-avantages-anacours .container {
    max-width: 1400px;
    margin: 0 auto;
    font-family: texta, sans-serif;
}

.bloc-avantages-anacours .content {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.bloc-avantages-anacours h2 {
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 900;
    margin-bottom: 20px;
}

.bloc-avantages-anacours h3 {
    font-size: clamp(25px, 4vw, 23px);
    margin-bottom: 20px;
}

.bloc-avantages-anacours p {
    font-size: clamp(14px, 2vw, 18px);
    margin-bottom: 20px;
}

.bloc-avantages-anacours .notre-plus {
    border: 1px dashed #f1c40f;
    border-radius: 0;
    padding: 15px;
    position: relative;
}

.bloc-avantages-anacours .notre-plus .notre-plus-span {
    background-color: #f1c40f;
    color: #fff;
    padding: 5px 10px;
    font-weight: bold;
    border-radius: 0;
    position: absolute;
    top: -15px;
    left: 20px;
    font-size: 14px;
}

.bloc-avantages-anacours .notre-plus p {
    font-size: 15px;
    margin: 0;
}

.bloc-avantages-anacours .avantages ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.bloc-avantages-anacours .avantages li {
  background-color: #e8ffec;
  padding: 15px;
  position: relative;
  font-family: "Texta", Sans-serif;
  font-weight: 800;
  color: #54595f;
}

.bloc-avantages-anacours .avantages li {
    display: flex;
    align-items: center;
}

.bloc-avantages-anacours .avantages li i {
    color: #0BDEA7;
    font-size: 24px;
    margin-right: 15px;
    flex-shrink: 0;
}
 .bloc-avantages-anacours .texte p{
    font-size: clamp(14px, 2vw, 18px);
 }

@media (min-width: 769px) {
    .bloc-avantages-anacours.section {
        padding: 15px;
    }
}
@media (min-width: 1024px) {

    .bloc-avantages-anacours h2 {
        text-align: center;
    }
    .bloc-avantages-anacours .content {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        height: 330px;

    }

    .bloc-avantages-anacours .texte {
        width: 50%;
         height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        gap: 30px;
    }
    .bloc-avantages-anacours .texte p{
    margin-bottom: 20px;
}

    .bloc-avantages-anacours .avantages {
        width: 50%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }
}
/* === Bloc Avantages Anacours fin === */



/* === Bloc temoignages === */

.anacours-enseignants-qualifies .container {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.anacours-enseignants-qualifies .col-left,
.anacours-enseignants-qualifies .col-right {
    width: 100%;
}

.anacours-enseignants-qualifies .col-right {
    display: flex;
    justify-content: center;
}

.anacours-enseignants-qualifies .col-right img {
    max-width: 100%;
    height: auto;
    display: block;
}

.anacours-enseignants-qualifies h2 {
    font-size: 28px;
    font-weight: 700;
    color: #003B5C;
    line-height: 1.2;
    margin-bottom: 20px;
}

.anacours-enseignants-qualifies h2 span {
    color: #00C4B3;
}

.anacours-enseignants-qualifies p {
    font-size: 16px;
    line-height: 1.7;
    color: #333;
    margin-bottom: 40px;
}

.anacours-enseignants-qualifies p strong {
    font-weight: 700;
}

.anacours-temoignages-enseignants-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    margin-top: 60px;
}

.temoignage-card {
    border-radius: 0;
    padding: 20px;
    background-color: #f9f9f9;
    font-family: "Texta", sans-serif;
    box-shadow: rgba(0, 0, 0, 0.16) -2px 2px 2px;
    max-height: 250px;
    overflow: hidden;
    transition: max-height 0.8s ease, z-index 0.3s ease, box-shadow 0.3s ease;
}

.temoignage-card .texte {
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 15px;
    color: #333;
    line-height: 1.6;
}

.temoignage-card:hover {
    max-height: 500px; /* suffisant pour afficher tout le texte */
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.16) -5px  10px 5px;

}

.temoignage-card:hover .texte {
    -webkit-line-clamp: unset;
    display: block;
    overflow: visible;
    text-overflow: initial;
}

.temoignage-card .entete {
    font-weight: 700;
    font-size: 16px;
    color: #003B5C;
    margin-bottom: 6px;
}

.temoignage-card .sous-titre span {
    font-size: 14px;
    color: #00C4B3;
    margin-bottom: 12px;
    font-weight: 500;
}


.titre-enseignants {
    font-family: 'Texta', sans-serif;
}

.titre-enseignants h2 {
    font-weight: 900;
}

@media (min-width: 769px) {
    .anacours-enseignants-qualifies {
        max-width: 1400px;
        margin: 0 auto;
        margin-bottom: 50px;
    }

    .anacours-enseignants-qualifies h2 {
        font-size: clamp(24px, 3vw, 36px);
    }

    .anacours-enseignants-qualifies p {
        font-size: 18px;
    }

    .anacours-enseignants-qualifies .container {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
        gap: 60px;
    }

    .anacours-enseignants-qualifies .col-left,
    .anacours-enseignants-qualifies .col-right {
        width: 48%;
    }

    .anacours-temoignages-enseignants-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 1024px) {
    .anacours-temoignages-enseignants-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width: 1280px) {
    .anacours-temoignages-enseignants-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* === Bloc temoignages fin === */



/* === Bloc Instrument === */
.bloc-instrument {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 0 ;
    font-family: "Texta", sans-serif;
}

.bloc-instrument__row {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.bloc-instrument__img img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 0;
}

.bloc-instrument__content h2 {
    font-size: clamp(24px, 5vw, 36px);
    font-weight: 900;
    margin-bottom: 15px;
    line-height: 1.2;
}

.bloc-instrument__content h2 span {
    font-weight: 900;
}

.bloc-instrument__content p {
    font-size: clamp(14px, 2vw, 18px);
    color: #333;
    margin-bottom: 20px;
}

.bloc-instrument__content .btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 0;
    text-decoration: none;
    text-align: center;
    transition: background-color 0.3s ease;
    font-size: clamp(14px, 2vw, 20px);
}

.bloc-instrument__content .btn-yellow {
    background-color: #f4b428;
    border: 1px solid #f4b428;
    color: #fff;
    transition: all 0.6s ease;
}

.bloc-instrument__content .btn-yellow:hover {
    background-color: transparent;
    border: 1px solid #f4b428;
    color: #f4b428;
    box-shadow: rgba(0, 0, 0, 0.16) 5px  10px 0;
}

.bloc-instrument__content .btn-blue {
    background-color: #007eb6;
    border: 1px solid #007eb6;
    color: #fff;
    transition: all 0.6s ease;
}

.bloc-instrument__content .btn-blue:hover {
    background-color: transparent;
    border: 1px solid #007eb6;
    color : #007eb6;
    box-shadow: rgba(0, 0, 0, 0.16) -5px  10px 0;
}

@media (min-width: 769px) {
    .bloc-instrument{
        margin-top: 45px;
        padding: 0 15px;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
}
@media (min-width: 1024px) {
    .bloc-instrument {
        margin: auto;
        margin-top: 30px;
        max-width: 1400px;
    }
    .bloc-instrument__row {
        flex-direction: row;
        align-items: center;
        margin-bottom: 40px;
    }

    .bloc-instrument__row--reverse {
        flex-direction: row-reverse;
    }

    .bloc-instrument__img,
    .bloc-instrument__content {
        width: 50%;
    }

    .bloc-instrument__img {
        padding: 0 20px;
    }

    .bloc-instrument__content {
        padding: 0 20px;
    }
}
/* === Bloc Instrument fin === */



/* === CTA Section === */

.cta-section {
    background-color: #007aab;
    /* [MEP] */
    background-image: url("https://anacours-musique.local/wp-content/uploads/2023/01/symbole-anacours-bandeau-sombre-v2.svg"); 
    /* [MEP] */
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    padding: 2rem 1rem;
    color: #fff;
    max-width: 1400px;
    margin: 0 auto;
}

.cta-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.cta-image {
    display: none;
}

.cta-content {
    text-align: center;
}

.cta-content h2 {
    font-size: clamp(28px, 3vw, 36px);
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #fff;
}

.cta-content p {
    font-size: 1rem;
    margin-bottom: 1rem;
    color: #fff;
}

.cta-button {
    display: inline-block;
    background-color: #f2b100;
    color: #fff;
    padding: 0.75rem 1.5rem;
    font-weight: bold;
    text-decoration: none;
    transition: background-color 0.3s ease;
}

.yellow {
    background-color: #d69e00;
}

.yellow:hover {
    background-color: #d69e00;
    color: #fff;
}

@media (min-width: 769px) {
    .cta-section-container {
        padding: 0 15px;
    }
    .cta-container {
        flex-direction: row;
        justify-content: space-between;
        text-align: left;
    }
    .cta-content {
        flex: 1;
    }
    .cta-image {
        flex-shrink: 0;
    }
    .cta-content h2 {
        font-size: clamp(28px, 3vw, 36px);
    }
    .cta-content p {
        font-family: texta, sans-serif;
        font-size: clamp(14px, 2vw, 18px);
    }
}
@media (min-width: 1024px) {
    
    .cta-image {
    display: inline-block;
    align-self: flex-end;
    position: relative;
    z-index: 2;
    width: 250px;
    height: 0; /* pour forcer l'image à s'ancrer au bas du container */
    }

    .cta-image img {
        position: absolute;
        bottom: 0;
        left: 0;
        height: 250px;
        width: auto;
        z-index: 2;
        margin: -2rem;
    }
}
/* === CTA Section fin === */



/* === Autres instruments === */
.autres-instruments {
    display: flex;
    flex-direction: column;
    gap: 50px;
    text-align: center;
    justify-content: space-between;
    align-items: flex-start;
}
.autres-instruments .col-left h2, .autres-instruments .col-left p {
    text-align: center;
    margin-bottom: 20px;
}
.autres-instruments .col-left p {
    font-size: clamp(14px, 2vw, 18px);
    font-family: texta, sans-serif;
    color: #333;
    margin-bottom: 20px;
}
.autres-instruments h1,
.autres-instruments h2 {
    font-size: clamp(24px, 5vw, 36px);
    margin: 0;
    font-weight: 900;
}
.autres-instruments .h1 {
    text-transform: uppercase;
    color: #333f48;
}
.autres-instruments .h2 {
    color: #007aab;
}
.autres-instruments-container{
    display: flex;
    justify-content: center;
    flex-direction: wrap;
    flex-wrap: wrap;
    gap: 5px;
}.instrument-card {
    display: flex;
    flex-direction: column;
    width: 30%;
    gap : 5px;
    background-color: #f9f9f9;
    padding: 5px;
    border-radius: 0;
    transition: all 0.6s ease;
}
.instrument-card svg {
    width: 37px;
    height: 37px;
    fill: #007aab; 
}.instrument-card:hover {
    box-shadow: rgba(0, 0, 0, 0.16) -2px 2px 2px;
}
.instrument-card span {
    align-content: center;
    color: #007aab;
    font-family: texta, sans-serif;
    font-weight: 900;
    font-size: 13px;
}

@media (min-width: 769px) {
    
    .autres-instruments .col-left{
        width: 50%;
        text-align: left;
    }
    .autres-instruments-container{
        width: 50%;
    }
    .autres-instruments .col-left h2, .autres-instruments .col-left p {
        text-align: left;
        margin-bottom: 20px;
    }
    .autres-instruments-container {
        flex-direction: wrap;
        justify-content: flex-end;
    }
    .autres-instruments {
        display: flex;
        flex-direction: row;
        gap: 20px;
        padding: 0 15px;
        max-width: 1400px;
        margin:  auto;
        text-align: center;
        justify-content: space-between;
        align-items: flex-start;
    }
}
@media (min-width: 1024px) {
        
}
@media (min-width: 1450px) {
    .autres-instruments {
        padding: 0 ;
        }
        .autres-instruments-container{
        width: 40%;
    }
}
/* === Autres instruments fin === */



/* === Pourquoi choisir Anacours === */
.pourquoi-choisir-anacours {
    background-color: #AEE4E8;
    font-family: texta, sans-serif;
    padding: 25px;
    text-align: center;
}
.pourquoi-choisir-anacours h2 {
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 900;
    color: #333f48;
}
.pourquoi-choisir-anacours h3 {
    margin-bottom: 0px;
    color: #406A80;
    font-family: "Texta", Sans-serif;
    font-size: clamp(18px, 2vw, 30px);
    font-weight: 900;
}
.pourquoi-choisir-anacours  {
    font-size: clamp(12px, 1vw, 16px);
}
.card-pourquoi-choisir-anacours img{
    width: 150px;
    margin: 0 auto;
    border-radius: 999px;
    background-color: #fff;
}

@media (min-width: 769px) {
    .pourquoi-choisir-anacours {
    background-color: #AEE4E8;
    font-family: texta, sans-serif;
    padding: 50px;
    }.container-pourquoi-choisir-anacours {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 50px;
        max-width: 1400px;
        margin: 0 auto;
    }
    .container-pourquoi-choisir-anacours-avantages {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-evenly;
        gap: 20px;
        width: 100%;
    }
    .card-pourquoi-choisir-anacours{
        display: flex;
        width: 25%;
        justify-content: center;
        text-align: center;
        flex-direction: column;
    }
    .card-pourquoi-choisir-anacours img{
        width: 205px;
        margin: 0 auto;
    }
}
@media (min-width: 1024px) {
    
}
/* === Pourquoi choisir Anacours fin === */



/* === Bloc trustpilot === */
.container-avis-trustpilot {
    font-family: texta, sans-serif;
}
.container-avis-trustpilot h2 {
    font-size: clamp(24px, 3vw, 36px);
    text-transform: uppercase;
    font-weight: 900;
    line-height: 45px;
    text-align: center;

}
.container-avis-trustpilot h2 span {
    color: #DEAB16;
}
.container-avis-trustpilot p {
    font-size: clamp(14px, 3vw, 23px);
    text-align: center;
    margin-bottom: 40px;
    line-height: clamp(14px, 3vw, 23px);

}
.trustpilot-widget iframe {
    width: 100% !important;
}

@media (min-width: 769px) {
    .avis-trustpilot{
        max-width: 1400px;
        width: 100%;
        margin: 0 auto;
    }
}
@media (min-width: 1024px) {
    
}
/* === Bloc trustpilot fin === */



/* === Bloc FAQ Instrument === */
.faq-instrument {
    max-width: 1400px;
    width: 100%;
    margin: 0 auto;
    font-family: texta, sans-serif;
}
.faq-title {
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 900;
    color: #333f48;
    margin-bottom: 40px;
    text-align: center;
    text-transform: uppercase;
}
.faq-title span{
    color: #007aab;
}
button.faq-toggle {
    font-weight: 900;
    font-family: texta, sans-serif;
    font-size: clamp(12px, 2vw, 18px);
    background-color: #E6FFEB;
    padding: 10px;
    color: #54595f;

}
.faq-item {
    margin-bottom: 10px;
    border-radius: 0;
    overflow: hidden;
}
button.faq-toggle:hover, button.faq-toggle:focus, button.faq-toggle:active {
    background-color: #E6FFEB;
    color: #54595f;
    border-radius: 0;
}
.faq-instrument .faq-toggle {
    border: none;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.faq-icon {
    font-weight: 900;
    font-family: texta, sans-serif;
    font-size: clamp(12px, 2vw, 23px);
}
.faq-instrument{
    margin-top: 10px;
}
.faq-answer {
    border: 1px solid #eee;
    font-size: clamp(12px, 2vw, 17.6px);
    line-height: 17.6px;
    padding: 15px;
}
.faq-instrument .faq-link {
    display: inline-block;
    margin-top: 10px;
    color: #0070ba;
    font-weight: bold;
}

@media (min-width: 769px) {
    .faq-instrument.section {
        padding: 15px;
    }
}
@media (min-width: 1024px) {
    
}
/* === Bloc FAQ Instrument fin === */



/* === MAGAZINE === */
.magazine-section {
    padding: 40px 20px;
    text-align: center;
    font-family: "texta", sans-serif;
    background-color: #FAFAFA;
}

.magazine-title {
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 900;
    text-transform: uppercase;
    color: #333f48;
    margin-bottom: 30px;
}

.magazine-title span {
    color: #f4c028;
}

.magazine-swiper-container {
    position: relative;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 60px; /* Laisse la place pour les flèches */
    box-sizing: border-box;
}

.magazine-swiper {
    width: 100%;
}

.swiper-slide.magazine-slide {
    background: #fff;
    text-align: left;
    padding-bottom: 15px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 500px;
    transition: all 0.6s ease;
    box-shadow: rgba(0, 0, 0, 0.16) -2px 2px 2px;
}

.magazine-slide:hover {
    background-color: #007aab;

}

.magazine-slide:hover .magazine-post-title, .magazine-link:hover .magazine-post-title,
.magazine-slide:hover .magazine-excerpt, .magazine-link:hover .magazine-excerpt,
.magazine-slide:hover .magazine-link, .magazine-link:hover .magazine-link{
        color: #fff;
}

.magazine-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.magazine-post-title {
    font-size: 18px;
    font-weight: 700;
    margin: 15px 0 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0 15px;
}

.magazine-excerpt {
    font-size: 14px;
    color: #555;
    padding: 0 15px;
}

.magazine-link {
    display: inline-block;
    margin-top: 10px;
    font-weight: bold;
    color: #007aab;
    text-decoration: none;
    padding: 0 15px;
}

.magazine-footer {
    margin-top: 20px;
}

.magazine-all-btn {
    background: #007aab;
    color: #fff;
    padding: 10px 20px;
    font-weight: 700;
    border-radius: 4px;
    text-decoration: none;
}

/* === Flèches Swiper === */
.swiper-pagination {
    position: relative!important;
}
.magazine-prev,
.magazine-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px!important;
    height: 40px!important;
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 50%;
    z-index: 10;
    cursor: pointer;
}

/* Swiper injecte un ::after avec le contenu de la flèche */
.magazine-prev::after,
.magazine-next::after {
    font-size: 18px!important;
    font-weight: 900;
    color: #000;
}
.magazine-prev {
    left: 0;
}
.magazine-next {
    right: 0;
}


/* Cacher les flèches en mobile */
@media (max-width: 767px) {
    .magazine-prev,
    .magazine-next {
        display: none!important;
    }
}
/* === MAGAZINE fin === */



/* === Bloc Conservatoires === */
.bloc-conservatoires {
    max-width: 1400px;
    width: 100%;
    margin: 0 auto;
    font-family: texta, sans-serif;
    margin-bottom: 50
}
.bloc-conservatoires h2 {
    font-size: clamp(24px, 3vw, 36px);
    text-transform: uppercase;
    line-height: 1.1;
    font-weight: 900;
    color: #333f48;
    margin-bottom: 20px;
}

.bloc-conservatoires ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
}

.bloc-conservatoires li {
    font-size: clamp(12px, 2vw, 14px);
    color: #333;
    list-style-type: disc;
    list-style-position: inside;
    text-transform: uppercase;
    }

    .bloc-conservatoires li::marker {
        color: #007aab;;
}

.bloc-conservatoires .conservatoire-name {
    font-weight: 900;
}

/* === Desktop & tablettes paysage === */
@media (min-width: 768px) {
    .bloc-conservatoires ul {
        padding: 0;
        margin: 0;
        list-style: none;
        display: flex;
    }
    .bloc-conservatoires {
        padding: 15px;
    }
}
/* === Bloc Conservatoires fin === */



/* === Bloc decouvrir également === */
.bloc-decouvrir-egalement {
    max-width: 1400px;
    width: 100%;
    margin: 0 auto;
    font-family: texta, sans-serif;
    margin-bottom: 50px;
}
.bloc-decouvrir-egalement h2 {
    font-size: clamp(24px, 3vw, 36px);
    text-transform: uppercase;
    line-height: 1.1;
    font-weight: 900;
    color: #333f48;
    margin-bottom: 20px;
}
.bloc-decouvrir-egalement ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap : 20px;
}
.bloc-decouvrir-egalement a {
    text-decoration: none;
    font-size: clamp(12px, 2vw, 14px);
    color: #333;
}
.bloc-decouvrir-egalement li {
    font-size: clamp(12px, 2vw, 14px);
    color: #333;
    list-style-type: disc;
    list-style-position: inside;
    text-transform: uppercase;
}
.bloc-decouvrir-egalement li::marker {
    color: #007aab;
}
.bloc-decouvrir-egalement .decouvrir-instrument {
    font-weight: 900;
}


/* === Bloc decouvrir également fin === */



/* === page index === */

.bloc-index-villes{
    padding: 2% 5%;
    font-family: texta, sans-serif;
}
.bloc-index-villes h1 {
	text-transform:	uppercase;
}
.bloc-index-villes h2 {
    text-decoration: none;
    color: #333;
    font-size: 30px;
    text-transform: uppercase;
}
.bloc-index-villes h3 {
    text-decoration: none;
    color: #333;
    font-size: 20px;
}
.bloc-index-villes a {
    text-decoration: underline;
    color: #333;
    font-size: clamp(12px, 2vw, 18px);
}
/* === page index fin === */



/* === fin du fichier, écrire au dessus === */


@media (min-width: 769px) {
    .bloc-decouvrir-egalement ul {
        padding: 0;
        margin: 0;
        list-style: none;
        display: flex;
        flex-direction: row;
        gap : 20px;
    }
    .bloc-decouvrir-egalement {
        padding: 15px;
    }
}
@media (min-width: 1024px) {
    
}