body{
    margin: 0;
    padding: 0;
}

/* Bandeau de la page (titre, sous-titre, vidéo). Une classe et non le
   sélecteur d'élément « header », qui visait aussi l'en-tête du site. */
.aboutHero{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(
        180deg,
        rgba(146, 3, 255, 0.1) 25%,
        rgba(253, 186, 255, 0.4) 50%,
        rgba(211, 179, 255, 0.4) 120%
    );
}

/* En-tête du site : même dégradé que le bandeau, qu'il prolonge (il le tenait
   jusqu'ici de l'ancien sélecteur « header »). */
body > header{
    background: linear-gradient(
        180deg,
        rgba(146, 3, 255, 0.1) 25%,
        rgba(253, 186, 255, 0.4) 50%,
        rgba(211, 179, 255, 0.4) 120%
    );
}

.titleAbout{
    font-family: 'Poltawski Nowy';
    font-size: 60px;
    font-weight: 700;
    text-align: center;
    margin: 40px 0 0 0;
}

.secondaryTilteAbout{
    font-family: 'Afacad';
    font-size: 25px;
    font-weight: 400;
    /* Interligne du h2 qu'il était : un paragraphe hérite du 1,5 du corps */
    line-height: 1.2;
    text-align: center;
    text-wrap: balance;
    /* Écart sous le titre : les jambages de Poltawski Nowy dépassent la hauteur
       de ligne du h1 et touchaient le sous-titre */
    margin: 12px 0 0 0;
}

.videoAbout {
    /* Repère du bouton de pause, posé dans la vidéo */
    position: relative;
    /* Plafond : sans lui, la vidéo prenait 85 % des très grands écrans */
    width: min(85vw, 1200px);
    aspect-ratio: 16 / 9;
    background: linear-gradient(135deg, #B9B3FF, #F0D2FF);
    /* Arrondi proportionné : 60 px fixes donnaient une pilule sur téléphone */
    border-radius: clamp(20px, 6vw, 60px);
    margin: 40px 0 100px;
    overflow: hidden; 
}

.videoAbout video{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Pause et lecture (front/js/about.js) : à 24 px des bords, hors de la partie
   rognée par l'arrondi */
.videoAboutToggle{
    position: absolute;
    right: 24px;
    bottom: 24px;
}

/* Story */

.storyAbout{
    display: flex;
    flex-direction: row;
    /* align-items: center; */
    justify-content: space-around;
    padding: 50px 0 50px 0;
    background: 
    linear-gradient(135deg, #EBB3FF, #CFBBFF, #B3C4FF);
}

/* Largeur maximale : des lignes d'environ 66 caractères au plus sur les grands écrans */
.columnLeftStoryAbout{
    display: flex;
    flex-direction: column;
    width: 40%;
    max-width: 640px;
}

.columnRightStoryAbout{
    display: flex;
    flex-direction: column;
    width: 40%;
    max-width: 640px;
}

.textStoryAbout.marginB{
    margin-bottom: 50px;
}

.titleStoryAbout{
    font-family: 'Poltawski Nowy';
    font-size: 42px;
    font-weight: 600;
    margin: 0 0 20px 0;
}

.textStoryAbout{
    font-family: 'Afacad';
    font-size: 19px;
    font-weight: 400;
    margin: 0;
}

/* Listes du récit. Elles étaient placées dans des <p>, ce que le HTML interdit :
   le navigateur laissait des paragraphes vides autour, aux marges cumulées. Même
   police que les paragraphes (le sélecteur * de style.css imposerait Poppins). */
.listStoryAbout{
    margin: 6px 0 16px;
    padding-left: 1.3em;
    font-family: 'Afacad';
    font-size: 19px;
}

.listStoryAbout li{
    font-family: inherit;
    font-weight: 400;
}

.listStoryAbout.marginB{
    margin-bottom: 50px;
}

.ctaStoryAbout{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    text-wrap: balance;
    /* Largeur du libellé, jamais plus que la colonne : 400 px fixes débordaient
       de l'écran de 835 à 903 px. Hauteur libre : le libellé peut passer sur
       deux lignes. */
    box-sizing: border-box;
    align-self: flex-start;
    max-width: 100%;
    min-height: 44px;
    padding: 10px 24px;
    margin: 30px 0 0 0;
    color: #000;
    border-radius: 3px;
    font-family: 'Afacad';
    font-size: 19px;
    font-weight: 400;
    background-color: #EBB3FF;
    box-shadow: 
    0px 1px 4px 0px rgba(0,0,0,0.25),
    inset 0px 4px 10px 6px rgba(255,255,255,0.35),
    inset 0px -4px 4px 0px rgba(0,0,0,0.15),
    inset -1px 0px 4px 0px rgba(0,0,0,0.25),
    inset 3px 0px 6px 2px rgba(255,255,255,0.25);
    transition: 0.3s ease;
}

.ctaStoryAbout:hover{
    transform: scale(1.01);
}

.ctaStoryAbout:active{
    transform: scale(0.97);
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}


/* End story */

/* CTA Home */

.ctaHome{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: #F4F4F4;
    padding: 40px 0 40px 0;
    width: 100%;
}

.titleCtaHome{
    /* Police des titres du site, comme le même bloc de l'accueil */
    font-family: 'Poltawski Nowy';
    font-size: 42px;
    font-weight: 600;
    margin: 0;
}

.textCtaHome{
    font-family: 'Afacad';
    font-size: 19px;
    font-weight: 400;
    text-wrap: balance;
    margin: 10px 0 20px 0;
    width: 35%;
}



/* End CTA Home */



@media (max-width: 1080px){
    .titleAbout{
        width: 80%;
    }

    .secondaryTilteAbout{
        width: 80%;
    }
}

@media (max-width: 834px){
    .titleCtaHome{
        font-size: 32px;
    }

    .textCtaHome{
        width: 80%;
        font-size: 17px;
    }

    .storyAbout{
        flex-direction: column;
        /* Colonnes centrées : en colonne, sans cela, elles se calaient contre le bord gauche */
        align-items: center;
        gap: 50px;
    }

    .columnLeftStoryAbout{
        width: 80%;
    }

    .columnRightStoryAbout{
        width: 80%;
    }
}

@media (max-width: 768px){
    .titleAbout{
        font-size: 48px;
    }

    .secondaryTilteAbout{
        width: 80%;
        font-size: 17px;
    }

    .titleStoryAbout{
        font-size: 32px;
    }

    .textStoryAbout{
        font-size: 17px;
    }

    .listStoryAbout{
        font-size: 17px;
    }

    .videoAbout{
        margin-bottom: 50px;
    }
}

@media (max-width: 634px){
    .titleAbout{
        /* 32 px au plus ; en dessous de 376 px, la taille suit l'écran pour que
           « BeReadyForBeauty » (environ 9 fois la taille de police) tienne dans 80 % */
        font-size: clamp(22px, 8.5vw, 32px);
    }

    .titleStoryAbout{
        font-size: 26px;
    }
}

@media (max-width: 576px){
    .titleCtaHome{
        font-size: 28px;
    }

    .ctaStoryAbout{
        width: 100%;
        padding: 10px 16px;
        line-height: 1.25;
    }
}