/* ==========================================================

   PAGE ACTUALITÉS

========================================================== */



.news-archive {

    width: 100%;

    overflow: hidden;



    background: #FAF7F4;

    color: #000000;

}





/* ==========================================================

   HERO

========================================================== */



.news-archive-hero {

    min-height: 680px;



    padding: 40px;



    display: flex;



    background: #000000;

    color: #FFFFFF;

}





.news-archive-hero-inner {

    width: 100%;

    max-width: 1450px;



    margin: 0 auto;



    display: flex;

    flex-direction: column;

    justify-content: space-between;

}





.news-archive-hero-meta,

.news-archive-hero-bottom {

    display: flex;

    align-items: center;

    justify-content: space-between;



    gap: 30px;



    font-family: "DM Sans", sans-serif;



    color: rgba(255, 255, 255, 0.38);



    font-size: 11px;

    letter-spacing: 0.18em;



    text-transform: uppercase;

}





.news-archive-hero-content {

    width: 100%;

    max-width: 1100px;



    margin: 80px auto;



    text-align: center;

}





.news-archive-kicker {

    margin: 0 0 28px;



    font-family: "Libre Baskerville", serif;



    color: #E2A4B1;



    font-size: 13px;

    font-style: italic;

}





.news-archive-hero h1 {

    margin: 0;



    font-family: "Playfair Display SC", serif;



    color: #FFFFFF;



    font-size: clamp(70px, 8vw, 120px);

    font-weight: 400;



    line-height: 0.86;

    letter-spacing: -0.05em;



    text-transform: uppercase;

}





.news-archive-hero h1 span {

    display: block;



    margin-top: 15px;



    font-family: "Libre Baskerville", serif;



    color: #E2A4B1;



    font-size: 0.62em;

    font-style: italic;



    line-height: 1;



    text-transform: none;

}





.news-archive-intro {

    max-width: 520px;



    margin: 38px auto 0;



    font-family: "DM Sans", sans-serif;



    color: rgba(255, 255, 255, 0.5);



    font-size: 16px;

    line-height: 1.8;

}





/* ==========================================================

   ACTUALITÉ À LA UNE

========================================================== */



.news-featured {

    padding: 145px 40px;



    background: #FAF7F4;

}





.news-featured-inner {

    max-width: 1400px;



    margin: 0 auto;

}





.news-featured-card {

    display: grid;

    grid-template-columns: minmax(0, 1.2fr) minmax(400px, 0.8fr);



    align-items: center;



    gap: clamp(70px, 8vw, 130px);

}





/* IMAGE */



.news-featured-image {

    position: relative;



    height: 650px;



    display: block;



    overflow: hidden;



    background: #E8E2DF;

}





.news-featured-image > img {

    display: block;



    width: 100%;

    height: 100%;



    object-fit: cover;



    transition: transform 0.8s cubic-bezier(.2, .7, .2, 1);

}





.news-featured-image:hover > img {

    transform: scale(1.025);

}





/* PLACEHOLDER */



.news-featured-placeholder {

    width: 100%;

    height: 100%;



    display: flex;

    align-items: center;

    justify-content: center;



    background: #F6E8EB;

}





.news-featured-placeholder span {

    font-family: "Libre Baskerville", serif;



    color: #A86A77;



    font-size: 14px;

    font-style: italic;

}





/* LABEL */



.news-featured-image-label {

    position: absolute;



    top: 20px;

    left: 20px;



    padding: 9px 14px;



    border-radius: 100px;



    background: #000000;

    color: #FFFFFF;



    font-family: "DM Sans", sans-serif;



    font-size: 10px;

    letter-spacing: 0.15em;



    text-transform: uppercase;

}





/* CONTENU */



.news-featured-content {

    max-width: 500px;

}





.news-featured-meta {

    margin-bottom: 28px;



    display: flex;

    align-items: center;



    gap: 14px;



    font-family: "DM Sans", sans-serif;



    color: #8C8380;



    font-size: 11px;

    letter-spacing: 0.15em;



    text-transform: uppercase;

}





.news-featured-meta-line {

    width: 30px;

    height: 1px;



    background: #E2A4B1;

}





.news-featured-content h2 {

    margin: 0;



    font-family: "Playfair Display SC", serif;



    color: #000000;



    font-size: clamp(45px, 4vw, 67px);

    font-weight: 400;



    line-height: 0.98;

    letter-spacing: -0.04em;



    text-transform: uppercase;

}





.news-featured-content h2 a {

    color: inherit;



    text-decoration: none;

}





.news-featured-content > p {

    margin: 30px 0 0;



    font-family: "DM Sans", sans-serif;



    color: #6B6461;



    font-size: 16px;

    line-height: 1.8;

}





/* LIEN */



.news-featured-link {

    width: fit-content;



    margin-top: 35px;



    display: flex;

    align-items: center;



    gap: 15px;



    font-family: "Libre Baskerville", serif;



    color: #000000;



    font-size: 12px;

    font-style: italic;



    text-decoration: none;

}





.news-featured-link span:last-child {

    width: 39px;

    height: 39px;



    display: flex;

    align-items: center;

    justify-content: center;



    border: 1px solid #E2A4B1;

    border-radius: 50%;



    transition:

background 0.3s ease,

        transform 0.35s ease;

}





.news-featured-link:hover span:last-child {

    background: #E2A4B1;



    transform: rotate(45deg);

}





/* ==========================================================

   LISTE DES ACTUALITÉS

========================================================== */



.news-list {

    padding: 140px 40px 150px;



    background: #F6E8EB;

}





.news-list-inner {

    max-width: 1400px;



    margin: 0 auto;

}





/* HEADER */



.news-list-header {

    margin-bottom: 75px;



    display: grid;

    grid-template-columns: 1fr 390px;



    align-items: end;



    gap: 80px;

}





.news-list-label {

    margin-bottom: 25px;



    display: flex;

    align-items: center;



    gap: 15px;

}





.news-list-label span {

    width: 40px;

    height: 1px;



    background: #C77D8C;

}





.news-list-label p {

    margin: 0;



    font-family: "DM Sans", sans-serif;



    color: #A55F6D;



    font-size: 11px;

    letter-spacing: 0.2em;



    text-transform: uppercase;

}





.news-list-header h2 {

    margin: 0;



    font-family: "Playfair Display SC", serif;



    color: #000000;



    font-size: clamp(50px, 5vw, 78px);

    font-weight: 400;



    line-height: 0.95;

    letter-spacing: -0.045em;



    text-transform: uppercase;

}





.news-list-header h2 span {

    display: block;



    font-family: "Libre Baskerville", serif;



    color: #B96E7D;



    font-size: 0.72em;

    font-style: italic;



    text-transform: none;

}





.news-list-description {

    margin: 0;



    font-family: "DM Sans", sans-serif;



    color: #75696C;



    font-size: 16px;

    line-height: 1.8;

}





/* ==========================================================

   GRILLE

========================================================== */



.news-list-grid {

    display: grid;



    grid-template-columns: repeat(3, minmax(0, 1fr));



    gap: 75px 25px;

}





/* Décalage éditorial */



.news-archive-card:nth-child(3n + 2) {

    padding-top: 55px;

}





/* ==========================================================

   CARTE ACTUALITÉ

========================================================== */



.news-archive-card-image {

    position: relative;



    height: 430px;



    display: block;



    overflow: hidden;



    background: #E9DFE1;

}





.news-archive-card-image > img {

    display: block;



    width: 100%;

    height: 100%;



    object-fit: cover;



    transition:

        transform 0.7s cubic-bezier(.2, .7, .2, 1),

        filter 0.5s ease;

}





.news-archive-card:hover .news-archive-card-image > img {

    transform: scale(1.035);



    filter: brightness(0.88);

}





/* PLACEHOLDER */



.news-card-placeholder {

    width: 100%;

    height: 100%;



    display: flex;

    align-items: center;

    justify-content: center;



    background: #FAF7F4;

}





.news-card-placeholder span {

    font-family: "Libre Baskerville", serif;



    color: #A76B77;



    font-size: 12px;

    font-style: italic;

}





/* FLÈCHE */



.news-card-arrow {

    position: absolute;



    right: 15px;

    bottom: 15px;



    width: 44px;

    height: 44px;



    display: flex;

    align-items: center;

    justify-content: center;



    border-radius: 50%;



    background: #FFFFFF;

    color: #000000;



    font-size: 16px;



    transition:

background 0.3s ease,

        color 0.3s ease,

        transform 0.4s ease;

}





.news-archive-card:hover .news-card-arrow {

    background: #E2A4B1;



    transform: rotate(45deg);

}





/* CONTENU */



.news-archive-card-content {

    padding-top: 20px;

}





.news-archive-card-meta {

    margin-bottom: 17px;



    display: flex;

    align-items: center;

    justify-content: space-between;



    gap: 20px;



    font-family: "DM Sans", sans-serif;



    color: #8D7D80;



    font-size: 10px;

    letter-spacing: 0.15em;



    text-transform: uppercase;

}





.news-archive-card h3 {

    margin: 0;



    font-family: "Libre Baskerville", serif;



    color: #000000;



    font-size: 20px;

    font-weight: 400;



    line-height: 1.4;

}





.news-archive-card h3 a {

    color: inherit;



    text-decoration: none;

}





.news-archive-card-content > p {

    margin: 15px 0 0;



    font-family: "DM Sans", sans-serif;



    color: #746A6C;



    font-size: 16px;

    line-height: 1.75;

}





.news-archive-read {

    width: fit-content;



    margin-top: 18px;



    display: inline-block;



    border-bottom: 1px solid rgba(0, 0, 0, 0.3);



    font-family: "Libre Baskerville", serif;



    color: #000000;



    font-size: 12px;

    font-style: italic;



    text-decoration: none;



    transition: border-color 0.3s ease;

}





.news-archive-read:hover {

    border-color: #C77D8C;

}





/* ==========================================================

   PAGINATION

========================================================== */



.news-pagination {

    margin-top: 100px;



    display: flex;

    align-items: center;

    justify-content: center;



    gap: 7px;

}





.news-pagination .page-numbers {

    width: 42px;

    height: 42px;



    display: inline-flex;

    align-items: center;

    justify-content: center;



    border: 1px solid rgba(0, 0, 0, 0.15);

    border-radius: 50%;



    font-family: "DM Sans", sans-serif;



    color: #000000;



    font-size: 12px;



    text-decoration: none;



    transition:

background 0.3s ease,

        border-color 0.3s ease,

        color 0.3s ease;

}





.news-pagination .page-numbers.current,

.news-pagination .page-numbers:hover {

    border-color: #000000;



    background: #000000;

    color: #FFFFFF;

}





/* AUCUNE ACTUALITÉ */



.news-list-empty {

    padding: 70px 0;



    border-top: 1px solid rgba(0, 0, 0, 0.15);



    text-align: center;

}





.news-list-empty p {

    margin: 0;



    font-family: "Libre Baskerville", serif;



    color: #6F6567;



    font-size: 14px;

    font-style: italic;

}





/* ==========================================================

   CTA FINAL

========================================================== */



.news-archive-cta {

    padding: 150px 40px;



    background: #000000;

    color: #FFFFFF;



    text-align: center;

}





.news-archive-cta-inner {

    max-width: 1050px;



    margin: 0 auto;

}





.news-archive-cta-kicker {

    margin: 0 0 27px;



    font-family: "Libre Baskerville", serif;



    color: #E2A4B1;



    font-size: 13px;

    font-style: italic;

}





.news-archive-cta h2 {

    margin: 0;



    font-family: "Playfair Display SC", serif;



    color: #FFFFFF;



    font-size: clamp(58px, 6.5vw, 95px);

    font-weight: 400;



    line-height: 0.9;

    letter-spacing: -0.045em;



    text-transform: uppercase;

}





.news-archive-cta h2 span {

    display: block;



    margin-top: 10px;



    font-family: "Libre Baskerville", serif;



    color: #E2A4B1;



    font-size: 0.68em;

    font-style: italic;



    text-transform: none;

}





.news-archive-cta-text {

    max-width: 500px;



    margin: 30px auto 0;



    font-family: "DM Sans", sans-serif;



    color: rgba(255, 255, 255, 0.48);



    font-size: 16px;

    line-height: 1.8;

}





/* CTA BUTTON */



.news-archive-cta-button {

    position: relative;



    width: fit-content;



    margin: 38px auto 0;

    padding: 7px 7px 7px 24px;



    display: flex;

    align-items: center;



    gap: 25px;



    overflow: hidden;



    border: 1px solid #E2A4B1;

    border-radius: 100px;



    color: #FFFFFF;



    text-decoration: none;



    isolation: isolate;

}





.news-archive-cta-button::before {

    content: "";



    position: absolute;



    inset: 0;



    z-index: -1;



    background: #E2A4B1;



    transform: translateX(-101%);



    transition: transform 0.45s cubic-bezier(.77, 0, .18, 1);

}





.news-archive-cta-button > span:first-child {

    font-family: "Libre Baskerville", serif;



    font-size: 12px;

    font-style: italic;



    transition: color 0.3s ease;

}





.news-archive-cta-arrow {

    width: 42px;

    height: 42px;



    display: flex;

    align-items: center;

    justify-content: center;



    border-radius: 50%;



    background: #E2A4B1;

    color: #000000;



    font-size: 16px;



    transition:

        transform 0.4s ease,

background 0.3s ease;

}





.news-archive-cta-button:hover::before {

    transform: translateX(0);

}





.news-archive-cta-button:hover > span:first-child {

    color: #000000;

}





.news-archive-cta-button:hover .news-archive-cta-arrow {

    background: #FFFFFF;



    transform: rotate(45deg);

}





/* ==========================================================

   TABLETTE LARGE

   <= 1050PX

========================================================== */



@media (max-width: 1050px) {



    /* HERO */



    .news-archive-hero {

        min-height: 620px;



        padding: 35px 30px;

    }





    /* FEATURED */



    .news-featured {

        padding: 110px 30px;

    }





    .news-featured-card {

        grid-template-columns: 1.1fr 0.9fr;



        gap: 60px;

    }





    .news-featured-image {

        height: 550px;

    }





    /* LIST */



    .news-list {

        padding: 110px 30px;

    }





    .news-list-header {

        gap: 60px;

    }





    .news-list-grid {

        grid-template-columns: repeat(2, minmax(0, 1fr));



        gap: 65px 25px;

    }





    .news-archive-card:nth-child(3n + 2) {

        padding-top: 0;

    }





    .news-archive-card:nth-child(even) {

        padding-top: 50px;

    }





    .news-archive-card-image {

        height: 500px;

    }





    /* CTA */



    .news-archive-cta {

        padding: 120px 30px;

    }



}





/* ==========================================================

   TABLETTE

   <= 768PX

========================================================== */



@media (max-width: 768px) {



    /* HERO */



    .news-archive-hero {

        min-height: 580px;



        padding: 30px 25px;

    }





    .news-archive-hero-content {

        margin: 70px auto;

    }





    .news-archive-hero h1 {

        font-size: clamp(55px, 12vw, 80px);

    }





    /* FEATURED */



    .news-featured {

        padding: 90px 25px;

    }





    .news-featured-card {

        display: flex;

        flex-direction: column;



        align-items: stretch;



        gap: 45px;

    }





    .news-featured-image {

        height: 600px;

    }





    .news-featured-content {

        max-width: 650px;

    }





    /* LIST */



    .news-list {

        padding: 90px 25px;

    }





    .news-list-header {

        display: block;



        margin-bottom: 55px;

    }





    .news-list-description {

        max-width: 500px;



        margin-top: 30px;

    }





    .news-archive-card-image {

        height: 460px;

    }





    /* CTA */



    .news-archive-cta {

        padding: 100px 25px;

    }



}





/* ==========================================================

   MOBILE

   <= 550PX

========================================================== */



@media (max-width: 550px) {



    /* HERO */



    .news-archive-hero {

        min-height: 540px;



        padding: 25px 18px 30px;

    }





    .news-archive-hero-meta span:last-child {

        display: none;

    }





    .news-archive-hero-content {

        margin: 55px auto;

    }





    .news-archive-kicker {

        margin-bottom: 22px;



        font-size: 12px;

    }





    .news-archive-hero h1 {

        font-size: clamp(44px, 14vw, 60px);



        line-height: 0.94;

    }





    .news-archive-hero h1 span {

        margin-top: 10px;

    }





    .news-archive-intro {

        margin-top: 28px;



        font-size: 13px;

    }





    .news-archive-hero-bottom {

        justify-content: flex-start;

        flex-wrap: wrap;



        gap: 10px 20px;

    }





    /* FEATURED */



    .news-featured {

        padding: 75px 18px;

    }





    .news-featured-card {

        gap: 38px;

    }





    .news-featured-image {

        height: 470px;

    }





    .news-featured-image-label {

        top: 14px;

        left: 14px;

    }





    .news-featured-meta {

        margin-bottom: 22px;

    }





    .news-featured-content h2 {

        font-size: clamp(37px, 10vw, 48px);

    }





    .news-featured-content > p {

        margin-top: 22px;



        font-size: 13px;

    }





    .news-featured-link {

        margin-top: 28px;

    }





    /* LIST */



    .news-list {

        padding: 75px 18px;

    }





    .news-list-header h2 {

        font-size: clamp(40px, 11vw, 52px);

    }





    .news-list-grid {

        grid-template-columns: 1fr;



        gap: 55px;

    }





    .news-archive-card:nth-child(even),

    .news-archive-card:nth-child(3n + 2) {

        padding-top: 0;

    }





    .news-archive-card-image {

        height: 500px;

    }





    .news-archive-card h3 {

        font-size: 19px;

    }





    .news-archive-card-content > p {

        font-size: 13px;

    }





    /* PAGINATION */



    .news-pagination {

        margin-top: 70px;

    }





    /* CTA */



    .news-archive-cta {

        padding: 80px 18px;

    }





    .news-archive-cta h2 {

        font-size: clamp(42px, 12vw, 57px);

    }





    .news-archive-cta-text {

        font-size: 13px;

    }





    .news-archive-cta-button {

        padding-left: 18px;



        gap: 17px;

    }





    .news-archive-cta-button > span:first-child {

        font-size: 12px;

    }



}





/* ==========================================================

   PETIT MOBILE

   <= 380PX

========================================================== */



@media (max-width: 380px) {



    .news-archive-hero,

    .news-featured,

    .news-list,

    .news-archive-cta {

        padding-left: 15px;

        padding-right: 15px;

    }





    .news-featured-image {

        height: 410px;

    }





    .news-archive-card-image {

        height: 430px;

    }





    .news-pagination .page-numbers {

        width: 38px;

        height: 38px;

    }



}





/* ==========================================================

   ÉCRANS TACTILES

========================================================== */



@media (hover: none) {



    .news-featured-image:hover > img {

        transform: none;

    }





    .news-archive-card:hover .news-archive-card-image > img {

        transform: none;



        filter: none;

    }



}