.blog-entry.thumbnail img,
.blog-entry .thumbnail img,
.archive .blog-entry img,
.blog .blog-entry img {
    border-top-left-radius: 150px !important;
    border-top-right-radius: 150px !important;
}

.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img,
.woocommerce-page .product img,
.woocommerce .related.products img,
.woocommerce .upsells.products img {
    border-radius: 200px;
    overflow: hidden;
}

.single-post .thumbnail img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
}

.single-product #footer,
.single-product #footer-widgets {
    display: block !important;
}

#site-logo img {
    max-height: 70px !important;
    width: auto !important;
    height: auto !important;
}

body.home .page-header {
    display: none !important;
}

#related-posts time.published {
    display: none !important;
}

body.tax-product_cat #content article.entry-content {
    display: flex !important;
    flex-direction: column !important;
}

body.tax-product_cat #content article.entry-content > header.woocommerce-products-header {
    order: 99 !important;
    margin-top: 45px;
    padding-top: 30px;
    border-top: 1px solid #f1f1f1;
}

body.tax-product_cat .term-description {
    display: block !important;
}

body.tax-product_cat .term-description p {
    margin-bottom: 1.1em;
    line-height: 1.75;
}

body.tax-product_cat .term-description .md-suite[hidden],
body.tax-product_cat .term-description .md-points[hidden] {
    display: none;
}

body.tax-product_cat .term-description .md-plus {
    display: block;
    margin: 18px auto 0;
    padding: 10px 26px;
    border: 2px solid #fcd1db;
    border-radius: 6px;
    background: #fff;
    color: #4a4a4a;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
}

body.tax-product_cat .term-description .md-plus:hover,
body.tax-product_cat .term-description .md-plus:focus {
    background: #fcd1db;
    color: #4a4a4a;
}

.md-cta {
    transition: background-color .22s ease, border-color .22s ease;
}

.md-cta:hover,
.md-cta:focus {
    background: #fdefed !important;
    color: #000 !important;
}

.md-cta-secondaire:hover,
.md-cta-secondaire:focus {
    background: #fcd1db !important;
    border-color: #fcd1db !important;
    color: #000 !important;
}

@media only screen and (min-width: 960px) {
    #site-header.center-menu #site-header-inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #site-header.center-menu #site-logo {
        float: none !important;
        flex: 0 0 auto;
    }

    #site-header.center-menu #site-navigation-wrap {
        position: static !important;
        left: auto !important;
        right: auto !important;
        float: none !important;
        -webkit-transform: none !important;
        transform: none !important;
        flex: 1 1 auto;
        display: flex;
        justify-content: center;
    }

    #site-header.center-menu #site-navigation-wrap .navigation,
    #site-header.center-menu #site-navigation-wrap #site-navigation {
        float: none !important;
    }

    #site-header.center-menu #menu-menu {
        float: none !important;
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
    }

    #site-header.center-menu #menu-menu > li > a.menu-link {
        padding-left: 11px;
        padding-right: 11px;
    }
}

@media only screen and (max-width: 959px) {
    #site-header.center-menu #site-header-inner {
        position: relative;
    }

    #site-header.center-menu .oceanwp-mobile-menu-icon.mobile-right,
    #site-header.center-menu .oceanwp-mobile-menu-icon.mobile-left {
        float: none !important;
        position: absolute;
        top: 0;
        left: 50%;
        right: auto !important;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }
}

.md-themes {
    max-width: 1100px;
    margin: 0 auto 34px;
    padding: 0 16px;
}

.md-themes-recherche {
    display: flex;
    gap: 10px;
    margin-bottom: 18px;
}

.md-themes-recherche label {
    flex: 1 1 auto;
    margin: 0;
}

.md-themes-recherche input[type="search"] {
    width: 100%;
    padding: 13px 18px;
    border: 1px solid #eaeaea;
    border-radius: 30px;
    background: #fff;
    font-size: 15px;
    line-height: 1.2;
}

.md-themes-recherche input[type="search"]:focus {
    border-color: #fcd1db;
    outline: none;
}

.md-themes-recherche button {
    flex: 0 0 auto;
    padding: 13px 26px;
    border: 0;
    border-radius: 30px;
    background: #fcd1db;
    color: #000;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1.2;
    cursor: pointer;
}

.md-themes-recherche button:hover,
.md-themes-recherche button:focus {
    background: #fdefed;
}

.md-themes-liste {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.md-chip {
    display: inline-block;
    padding: 9px 18px;
    border: 1px solid #eaeaea;
    border-radius: 30px;
    background: #fff;
    color: #4a4a4a;
    font-size: 13px;
    line-height: 1.25;
    text-decoration: none;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.md-chip:hover,
.md-chip:focus {
    border-color: #fcd1db;
    background: #fdefed;
    color: #000;
}

.md-chip-actif,
.md-chip-actif:hover,
.md-chip-actif:focus {
    border-color: #fcd1db;
    background: #fcd1db;
    color: #000;
    font-weight: 600;
}

@media only screen and (max-width: 600px) {
    .md-themes-recherche {
        flex-wrap: wrap;
    }

    .md-themes-recherche button {
        width: 100%;
    }
}

.md-cas {
    max-width: 780px;
    margin: 0 auto;
    padding: 0 16px 60px;
}

.md-cas-tete {
    text-align: center;
    padding: 10px 0 34px;
    border-bottom: 1px solid #f1f1f1;
    margin-bottom: 34px;
}

.md-cas-surtitre {
    margin: 0 0 10px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #b06b7f;
}

.md-cas-titre {
    margin: 0 0 14px;
    font-size: 32px;
    line-height: 1.25;
}

.md-cas-chapo {
    margin: 0 auto;
    max-width: 620px;
    font-size: 17px;
    line-height: 1.6;
    color: #4a4a4a;
}

.md-cas-cliente {
    margin: 14px 0 0;
    font-size: 14px;
    color: #4a4a4a;
}

.md-cas-corps {
    font-size: 16px;
    line-height: 1.75;
}

.md-cas-corps h2,
.md-cas-h2 {
    margin: 42px 0 14px;
    font-size: 22px;
    line-height: 1.3;
}

.md-cas-corps h3 {
    margin: 30px 0 10px;
    font-size: 18px;
    line-height: 1.35;
}

.md-cas-grille {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.md-cas-photo {
    margin: 0;
}

.md-cas-photo img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
}

.md-cas-temoignage {
    margin: 46px 0;
    padding: 30px 28px;
    border: 0;
    border-left: 3px solid #fcd1db;
    background: #fdfbfb;
    border-radius: 0 10px 10px 0;
}

.md-cas-temoignage p {
    margin: 0;
    font-size: 18px;
    line-height: 1.65;
    font-style: italic;
}

.md-cas-temoignage cite {
    display: block;
    margin-top: 14px;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    color: #b06b7f;
}

.md-cas-produit {
    max-width: 360px;
    margin: 46px auto 0;
    padding: 28px 24px;
    border: 1px solid #eaeaea;
    border-radius: 14px;
    background: #fff;
    text-align: center;
}

.md-cas-label {
    margin: 0 0 14px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .09em;
    text-transform: uppercase;
    color: #b06b7f;
}

.md-cas-produit img {
    width: 100%;
    max-width: 230px;
    height: auto;
    display: block;
    margin: 0 auto 14px;
    border-radius: 8px;
}

.md-cas-produit-nom {
    margin: 0 0 18px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
}

.md-cas-produit-lien {
    margin: 0;
}

.md-cas-produit-lien .md-cta {
    display: inline-block;
    padding: 13px 28px;
    border-radius: 30px;
    background: #fcd1db;
    color: #000;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1.45;
    text-decoration: none;
}

@media only screen and (max-width: 680px) {
    .md-cas-titre {
        font-size: 26px;
    }

    .md-cas-grille {
        grid-template-columns: repeat(2, 1fr);
    }
}

.md-pied-marque img {
    max-width: 180px;
    height: auto;
    display: block;
    margin: 0 0 14px;
}

.md-pied-marque p {
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
}

.md-pied-liens,
.md-pied-reseaux {
    list-style: none;
    margin: 0;
    padding: 0;
}

.md-pied-liens li {
    margin: 0 0 9px;
    line-height: 1.5;
}

.md-pied-liens a {
    font-size: 14px;
    text-decoration: none;
}

.md-pied-liens a:hover,
.md-pied-liens a:focus,
.md-pied-reseaux a:hover,
.md-pied-reseaux a:focus {
    text-decoration: underline;
}

.md-pied-reseaux {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(0, 0, 0, .12);
}

.md-pied-reseaux a {
    font-size: 13px;
    letter-spacing: .04em;
    text-decoration: none;
}

#blog-entries.blog-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 34px 22px;
    margin: 0;
}

#blog-entries.blog-grid .blog-entry.grid-entry {
    float: none !important;
    clear: none !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-inner {
    display: flex;
    flex-direction: column;
    height: 100% !important;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
}

#blog-entries.blog-grid .blog-entry.grid-entry .thumbnail {
    aspect-ratio: 3 / 2;
    overflow: hidden;
    margin: 0;
    padding: 0;
    border-radius: 150px 150px 0 0;
}

#blog-entries.blog-grid .blog-entry.grid-entry .thumbnail a {
    display: block;
    height: 100%;
}

#blog-entries.blog-grid .blog-entry.grid-entry .thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#blog-entries.blog-grid .blog-entry.grid-entry.no-featured-image .blog-entry-inner::before {
    content: "";
    display: block;
    aspect-ratio: 3 / 2;
    background: #fdefed;
    border-radius: 150px 150px 0 0;
}

#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-header,
#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-summary,
#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-readmore {
    margin: 0;
    padding-left: 20px;
    padding-right: 20px;
    border-left: 1px solid #e9e9e9;
    border-right: 1px solid #e9e9e9;
}

#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-header {
    border-top: 1px solid #e9e9e9;
    padding-top: 18px;
}

#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-title {
    margin: 0;
    font-size: 19px;
    line-height: 1.35;
    min-height: 3.7em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    overflow: hidden;
}

#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-summary {
    flex: 1 1 auto;
    padding-top: 11px;
    line-height: 1.6;
}

#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-summary p {
    margin: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
}

#blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-readmore {
    padding-top: 15px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e9e9e9;
}

@media only screen and (max-width: 959px) {
    #blog-entries.blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (max-width: 767px) {
    #blog-entries.blog-grid {
        grid-template-columns: 1fr;
    }

    #blog-entries.blog-grid .blog-entry.grid-entry .blog-entry-title {
        min-height: 0;
    }
}

.md-large {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.home #content-wrap {
    max-width: none;
    width: 100%;
    padding: 0;
}

.home #content.site-content > section {
    margin: 0 auto 64px;
}

.md-hero {
    margin-bottom: 48px !important;
}

.md-hero-image {
    display: block;
    width: 100%;
    height: auto;
}

.md-mobile {
    display: none;
}

.md-hero-texte {
    text-align: center;
    padding-top: 34px;
}

.md-hero-texte h1 {
    font-size: 30px;
    line-height: 1.3;
    margin: 0 auto 26px;
    max-width: 760px;
}

.md-accroche h2,
.md-signature h2 {
    text-align: center;
    font-size: 25px;
    line-height: 1.35;
    margin: 0 auto;
    max-width: 880px;
}

.md-accroche h2 a {
    color: #000;
    text-decoration: none;
}

.md-accroche h2 a:hover,
.md-accroche h2 a:focus {
    color: #fcd1db;
}

.md-collections h2,
.md-atouts h2,
.md-selection h2,
.md-guides h2,
.md-faq h2 {
    text-align: center;
    font-size: 27px;
    margin: 0 0 16px;
}

.md-chapo {
    max-width: 880px;
    margin: 0 auto 34px;
    text-align: center;
    line-height: 1.7;
}

.md-collections-grille,
.md-guides-grille {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
}

.md-collection {
    position: relative;
    display: flex;
    align-items: flex-end;
    aspect-ratio: 4 / 5;
    background-size: cover;
    background-position: center;
    border-radius: 50px;
    overflow: hidden;
    text-decoration: none;
}

.md-collection h3 {
    background: #fff;
    color: #000;
    font-size: 18px;
    line-height: 1.3;
    text-align: center;
    margin: 0 32px 16px;
    padding: 16px 24px;
    border-radius: 50px;
    width: calc(100% - 64px);
}

.md-collection:hover h3,
.md-collection:focus h3 {
    background: #fdefed;
}

.md-atouts-grille {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 24px 18px;
    list-style: none;
    margin: 30px 0 0;
    padding: 0;
}

.md-atouts-grille li {
    text-align: center;
}

.md-atouts-grille img {
    display: block;
    width: 96px;
    height: 96px;
    margin: 0 auto 12px;
    border-radius: 50%;
    object-fit: cover;
}

.md-atouts-grille span {
    display: block;
    font-size: 14px;
    line-height: 1.5;
}

.md-avis {
    margin-bottom: 64px;
}

.md-centre {
    text-align: center;
    margin: 32px 0 0;
}

.md-virginie {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 44px;
    align-items: center;
}

.md-virginie h2 {
    font-size: 27px;
    margin: 0 0 18px;
}

.md-virginie p {
    line-height: 1.75;
}

.md-virginie img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 50px;
}

.md-guide {
    display: block;
    text-decoration: none;
    color: inherit;
}

.md-guide img {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 50px 50px 0 0;
}

.md-guide h3 {
    font-size: 18px;
    line-height: 1.4;
    margin: 0;
    padding: 18px 22px 22px;
    border: 1px solid #e9e9e9;
    border-top: 0;
    border-radius: 0 0 20px 20px;
}

.md-guide:hover h3,
.md-guide:focus h3 {
    background: #fdefed;
}

.md-faq {
    max-width: 880px;
}

.md-faq-item {
    border-bottom: 1px solid #e9e9e9;
}

.md-faq-item summary {
    cursor: pointer;
    list-style: none;
    padding: 18px 40px 18px 0;
    position: relative;
    font-size: 17px;
    line-height: 1.45;
}

.md-faq-item summary::-webkit-details-marker {
    display: none;
}

.md-faq-item summary::after {
    content: "+";
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    line-height: 1;
}

.md-faq-item[open] summary::after {
    content: "\2212";
}

.md-faq-reponse {
    padding: 0 0 20px;
    line-height: 1.75;
}

.md-faq-reponse p:last-child,
.md-faq-reponse ul:last-child {
    margin-bottom: 0;
}

@media only screen and (max-width: 959px) {
    .md-collections-grille,
    .md-guides-grille {
        grid-template-columns: repeat(2, 1fr);
    }

    .md-atouts-grille {
        grid-template-columns: repeat(3, 1fr);
    }

    .md-virginie {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

@media only screen and (max-width: 767px) {
    .md-bureau {
        display: none;
    }

    .md-mobile {
        display: block;
    }

    .md-collections-grille,
    .md-guides-grille {
        grid-template-columns: 1fr;
    }

    .md-atouts-grille {
        grid-template-columns: repeat(2, 1fr);
    }

    .md-hero-texte h1 {
        font-size: 24px;
    }

    .md-accroche h2,
    .md-signature h2,
    .md-collections h2,
    .md-atouts h2,
    .md-selection h2,
    .md-guides h2,
    .md-faq h2,
    .md-virginie h2 {
        font-size: 22px;
    }
}

.md-slider {
    position: relative;
    margin-top: 26px;
}

.md-slider ul.products {
    display: flex;
    flex-wrap: nowrap;
    gap: 22px;
    margin: 0;
    padding: 0 2px 6px;
    list-style: none;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.md-slider ul.products::-webkit-scrollbar {
    display: none;
}

.md-slider ul.products > li.product {
    flex: 0 0 calc((100% - 44px) / 3);
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
    scroll-snap-align: start;
}

.md-slider ul.products:focus-visible {
    outline: 2px solid #fcd1db;
    outline-offset: 4px;
}

.md-slider-prec,
.md-slider-suiv {
    position: absolute;
    top: 38%;
    z-index: 3;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid #000;
    border-radius: 50%;
    background: #fff;
    color: #000;
    cursor: pointer;
    display: none;
}

.md-slider-actif .md-slider-prec,
.md-slider-actif .md-slider-suiv {
    display: block;
}

.md-slider-prec {
    left: -14px;
}

.md-slider-suiv {
    right: -14px;
}

.md-slider-prec::before,
.md-slider-suiv::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 9px;
    height: 9px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
}

.md-slider-prec::before {
    transform: translate(-40%, -50%) rotate(-135deg);
}

.md-slider-suiv::before {
    transform: translate(-60%, -50%) rotate(45deg);
}

.md-slider-prec:hover,
.md-slider-suiv:hover,
.md-slider-prec:focus,
.md-slider-suiv:focus {
    background: #fcd1db;
}

.md-slider-prec[disabled],
.md-slider-suiv[disabled] {
    opacity: .28;
    cursor: default;
}

@media only screen and (max-width: 959px) {
    .md-slider ul.products > li.product {
        flex-basis: calc((100% - 22px) / 2);
    }

    .md-slider-prec {
        left: -6px;
    }

    .md-slider-suiv {
        right: -6px;
    }
}

@media only screen and (max-width: 767px) {
    .md-slider ul.products > li.product {
        flex-basis: 78%;
    }

    .md-slider-actif .md-slider-prec,
    .md-slider-actif .md-slider-suiv {
        display: none;
    }
}

.md-cta,
.md-cta-secondaire {
    display: inline-block;
    padding: 13px 28px;
    border-radius: 30px;
    border: 1px solid #000;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-decoration: none;
}

.md-cta {
    background: #fcd1db;
    color: #000;
}

.md-cta-secondaire {
    background: #fff;
    color: #000;
}

.md-cta:hover,
.md-cta:focus {
    background: #fdefed;
    color: #000;
}

.md-cta-secondaire:hover,
.md-cta-secondaire:focus {
    background: #fcd1db;
    color: #000;
}

.home #content.site-content > section {
    margin-bottom: 78px;
}

.md-hero {
    margin-bottom: 0 !important;
}

.md-hero-texte {
    padding-top: 42px;
}

.md-hero-texte h1 {
    margin-bottom: 30px;
}

.md-accroche {
    padding-top: 10px;
    padding-bottom: 10px;
}

.md-hero {
    background: #d3dbf8;
    padding-bottom: 46px;
}

.md-hero-texte {
    padding-top: 34px;
}

.md-bande {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.md-bande > .md-large {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.home #content.site-content > section.md-accroche-haut {
    background: #fdefed;
    margin-bottom: 0;
    padding-top: 52px;
    padding-bottom: 14px;
}

.home #content.site-content > section.md-collections {
    background: #fdefed;
    padding-bottom: 60px;
}

.wp-block-details {
    border-bottom: 1px solid #e9e9e9;
}

.wp-block-details summary {
    cursor: pointer;
    list-style: none;
    padding: 18px 40px 18px 0;
    position: relative;
    font-size: 17px;
    line-height: 1.45;
    font-weight: 600;
}

.wp-block-details summary::-webkit-details-marker {
    display: none;
}

.wp-block-details summary::after {
    content: "+";
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    line-height: 1;
}

.wp-block-details[open] summary::after {
    content: "\2212";
}

.wp-block-details > *:not(summary) {
    line-height: 1.75;
}

.wp-block-details > *:last-child {
    margin-bottom: 20px;
}

.md-faq-rubriques {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    list-style: none;
    margin: 22px 0 40px;
    padding: 0;
}

.md-faq-rubriques li {
    margin: 0;
}

.md-faq-rubriques a {
    display: block;
    padding: 18px 24px;
    border: 1px solid #e9e9e9;
    border-radius: 30px;
    background: #fff;
    color: #000;
    text-decoration: none;
    font-size: 16px;
    line-height: 1.4;
}

.md-faq-rubriques a:hover,
.md-faq-rubriques a:focus {
    background: #fdefed;
    border-color: #fcd1db;
}

@media only screen and (max-width: 767px) {
    .md-faq-rubriques {
        grid-template-columns: 1fr;
    }
}

.md-hero {
    background: none;
    padding-bottom: 0;
}

.home #content.site-content > section.md-accroche-haut,
.home #content.site-content > section.md-collections {
    background: none;
}

.md-accroche h2 {
    font-size: 24px;
    color: #030202;
    text-align: center;
}

.md-hero .md-cta {
    background: #d3dbf8;
    border-radius: 20px;
}

.md-hero .md-cta:hover,
.md-hero .md-cta:focus {
    background: #e6eafb;
}

.md-collections-grille {
    grid-template-columns: 24% repeat(3, 1fr);
    align-items: stretch;
    gap: 18px;
}

.md-collections-intro {
    background: #fdefed;
    padding: 30px 22px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.md-collections-intro h2 {
    text-align: left;
    font-size: 24px;
    margin: 0 0 14px;
}

.md-collections-intro p {
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
}

@media only screen and (max-width: 959px) {
    .md-collections-grille {
        grid-template-columns: repeat(3, 1fr);
    }

    .md-collections-intro {
        grid-column: 1 / -1;
    }
}

@media only screen and (max-width: 767px) {
    .md-collections-grille {
        grid-template-columns: 1fr;
    }
}

.woocommerce ul.products li.product .woo-entry-image a {
    display: block;
}

.woocommerce ul.products li.product .woo-entry-image img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    object-position: center;
}

/* Accueil, collections : les cartes suivent la hauteur de la ligne au lieu de déborder sur la voisine */
.md-collections-grille .md-collection {
    aspect-ratio: auto;
    min-height: 360px;
    width: auto;
}

@media only screen and (max-width: 1024px) {
    .md-collections-grille {
        grid-template-columns: repeat(3, 1fr);
    }

    .md-collections-intro {
        grid-column: 1 / -1;
    }
}

@media only screen and (max-width: 767px) {
    .md-collections-grille {
        grid-template-columns: 1fr;
    }

    .md-collections-grille .md-collection {
        min-height: 0;
        aspect-ratio: 4 / 5;
    }
}

/* Vidéos intégrées dans les contenus (fiches produits, articles) */
.modani-video {
    margin: 24px auto;
}

.modani-video--horizontale {
    max-width: 640px;
}

.modani-video--verticale {
    max-width: 280px;
}

.modani-video .responsive-video-wrap,
.modani-video p {
    position: static;
    height: auto;
    margin: 0;
    padding: 0;
}

.modani-video iframe {
    position: static !important;
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: 8px;
}

.modani-video--verticale iframe {
    aspect-ratio: 9 / 16;
}

/* Page FAQ : bandeau, rubriques en gros boutons rose pastel avec icône, encadré contact */
.md-faq-bandeau {
    margin-bottom: 40px;
    border-radius: 0;
}

.md-faq-bandeau h2 {
    margin: 0;
    font-size: 40px;
    line-height: 1.25;
    color: #080103;
}

.md-faq-sous-titre {
    margin: 0 0 24px;
    font-size: 24px;
}

.md-faq-rubriques {
    gap: 18px 26px;
    max-width: 980px;
    margin: 0 auto 56px;
}

.md-faq-rubriques a {
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 92px;
    padding: 20px 28px;
    border: 0;
    border-radius: 25px;
    background: #fdefed;
    color: #222;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
    transition: background-color .2s, transform .2s, box-shadow .2s;
}

.md-faq-rubriques a:hover,
.md-faq-rubriques a:focus {
    background: #fcd1db;
    border: 0;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(252, 209, 219, .6);
}

.md-faq-rubriques a::before {
    content: "\f059";
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #fff;
    color: #e58fa6;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 24px;
    line-height: 52px;
    text-align: center;
}

.md-faq-rubriques a[href*="vetements"]::before { content: "\f236"; }
.md-faq-rubriques a[href*="naissance"]::before { content: "\f77c"; }
.md-faq-rubriques a[href*="animaux"]::before { content: "\f6be"; }
.md-faq-rubriques a[href*="delais"]::before { content: "\f0d1"; }
.md-faq-rubriques a[href*="bouquet"]::before { content: "\f094"; font-weight: 400; }
.md-faq-rubriques a[href*="lait-maternel"]::before { content: "\f1fb"; }
.md-faq-rubriques a[href*="sur-mesure"]::before { content: "\f546"; }

.md-faq-contact {
    max-width: 420px;
    margin: 0 auto 40px;
    padding: 30px 26px;
    border-radius: 35px;
    background: #fdefed;
}

.md-faq-contact h3 {
    margin: 0 0 14px;
    font-size: 17px;
    font-weight: 600;
}

.md-faq-contact p {
    margin: 0 0 12px;
}

@media only screen and (max-width: 767px) {
    .md-faq-bandeau h2 {
        font-size: 30px;
    }

    .md-faq-rubriques a {
        min-height: 76px;
        font-size: 16px;
    }
}

/* Page Newsletter : formulaire centré, bouton rose arrondi */
.md-newsletter {
    max-width: 440px;
    margin: 10px auto 70px;
    text-align: center;
}

.md-newsletter-icone {
    margin-bottom: 18px;
    font-size: 40px;
    color: #d0d0db;
}

.md-newsletter #mc_embed_signup {
    width: 100% !important;
    background: none !important;
    font: inherit !important;
}

.md-newsletter #mc_embed_signup form,
.md-newsletter #mc_embed_signup_scroll {
    padding: 0;
    text-align: center;
}

.md-newsletter #mc_embed_signup .mc-field-group {
    width: 100%;
    min-height: 0;
    padding-bottom: 14px;
    text-align: center;
}

.md-newsletter #mc_embed_signup .mc-field-group label {
    display: block;
    margin-bottom: 6px;
    text-align: center;
}

.md-newsletter #mc_embed_signup .mc-field-group input {
    width: 100%;
    padding: 10px 16px;
    border: 1px solid #e3e3e3;
    border-radius: 30px;
    text-align: center;
}

.md-newsletter #mc_embed_signup .indicates-required {
    margin: 0 0 14px;
    text-align: center;
}

.md-newsletter #mc_embed_signup .clear.foot {
    display: block;
    margin: 0;
    text-align: center;
}

.md-newsletter #mc_embed_signup .button,
.md-newsletter #mc_embed_signup input[type="submit"] {
    display: inline-block;
    width: auto;
    height: auto;
    margin: 6px auto 0;
    padding: 12px 40px;
    border: 0;
    border-radius: 30px;
    background: #fcd1db !important;
    color: #222 !important;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 1.4;
    cursor: pointer;
}

.md-newsletter #mc_embed_signup .button:hover,
.md-newsletter #mc_embed_signup input[type="submit"]:hover {
    background: #fdefed !important;
}

/* Page Bons plans : produits gratuits (catégorie Gratuit, cachés de la boutique) puis bons plans en cartes, 2 par ligne */
.md-bons-plans-titre {
    margin-top: 60px;
}

.md-bons-plans {
    margin: 30px 0 60px;
}

.md-bons-plans > .wp-block-group__inner-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
}

.md-bons-plans .md-bon-plan {
    margin: 0;
    padding: 18px;
    border-radius: 25px;
    background: #fdefed;
    grid-template-columns: 30% auto;
    align-items: start;
}

.md-bons-plans .md-bon-plan.is-image-fill-element > .wp-block-media-text__media {
    align-self: start;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 1;
    border-radius: 18px;
    overflow: hidden;
}

.md-bon-plan .wp-block-media-text__media a {
    display: block;
    height: 100%;
}

.md-bon-plan .wp-block-media-text__content {
    padding: 0 0 0 20px;
}

.md-bon-plan h3 {
    margin: 0 0 8px;
    font-size: 17px;
    line-height: 1.35;
}

.md-bon-plan h3 a {
    color: #222;
    text-decoration: none;
}

.md-bon-plan h3 a:hover {
    text-decoration: underline;
}

.md-bon-plan p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
}

@media only screen and (max-width: 767px) {
    .md-bons-plans > .wp-block-group__inner-container {
        grid-template-columns: 1fr;
    }

    .md-bons-plans .md-bon-plan {
        grid-template-columns: 28% auto !important;
    }
}

/* Page Qui suis-je : texte et photo en alternance */
.md-qui {
    margin: 0 0 70px;
}

.md-qui .wp-block-media-text__media img {
    border-radius: 30px;
}

.md-qui.has-media-on-the-right .wp-block-media-text__content {
    padding: 0 50px 0 0;
}

.md-qui:not(.has-media-on-the-right) .wp-block-media-text__content {
    padding: 0 0 0 50px;
}

.md-qui h2 {
    margin-top: 0;
}

@media only screen and (max-width: 600px) {
    .md-qui.has-media-on-the-right .wp-block-media-text__content,
    .md-qui:not(.has-media-on-the-right) .wp-block-media-text__content {
        padding: 24px 0 0;
    }

    .md-qui.has-media-on-the-right .wp-block-media-text__media {
        grid-row: 1;
    }

    .md-qui.has-media-on-the-right .wp-block-media-text__content {
        grid-row: 2;
    }
}

/* Page Contact : trois photos côte à côte avant le formulaire, carte */
.md-contact-photos.wp-block-gallery {
    max-width: 900px;
    margin: 10px auto 40px;
}

.md-contact-photos.wp-block-gallery.has-nested-images figure.wp-block-image {
    height: 340px;
    border-radius: 25px;
    overflow: hidden;
}

.md-contact-photos.wp-block-gallery.has-nested-images figure.wp-block-image img {
    height: 100%;
    object-fit: cover;
}

.md-contact-carte {
    display: block;
    width: 100%;
    height: 380px;
    margin: 30px 0 60px;
    border: 0;
    border-radius: 25px;
}

@media only screen and (max-width: 600px) {
    .md-contact-photos.wp-block-gallery.has-nested-images figure.wp-block-image {
        height: 160px;
        border-radius: 15px;
    }
}

/* FAQ : pas de soulignement sur les gros boutons */
.entry-content .md-faq-rubriques a,
.md-faq-rubriques a:hover {
    text-decoration: none;
}

.md-texte-centre {
    text-align: center;
}

/* Boutons de contenu (blocs Bouton) : rose ou bleu pastel, arrondis */
.md-boutons {
    margin-top: 24px;
}

.md-bouton-rose .wp-block-button__link,
.md-bouton-bleu .wp-block-button__link {
    padding: 12px 32px;
    border-radius: 20px;
    background: #fcd1db;
    color: #000;
    font-weight: 600;
    text-decoration: none;
    transition: background-color .2s;
}

.md-bouton-bleu .wp-block-button__link {
    background: #d3dbf8;
}

.md-bouton-rose .wp-block-button__link:hover,
.md-bouton-rose .wp-block-button__link:focus {
    background: #fdefed;
    color: #000;
}

.md-bouton-bleu .wp-block-button__link:hover,
.md-bouton-bleu .wp-block-button__link:focus {
    background: #e6eafb;
    color: #000;
}

/* Page Affiliation : les 4 étapes avec icône */
.md-affil-etapes {
    margin: 30px 0 70px;
}

.md-affil-etapes > .wp-block-group__inner-container {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 26px;
}

.md-affil-etapes p {
    margin: 0;
    padding: 24px 18px;
    border-radius: 25px;
    background: #fdefed;
    text-align: center;
    font-weight: 600;
    line-height: 1.5;
}

.md-affil-etapes p::before {
    display: block;
    margin: 0 auto 14px;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #fff;
    color: #e58fa6;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 26px;
    line-height: 64px;
}

.md-affil-etapes p:nth-child(1)::before { content: "\f390"; }
.md-affil-etapes p:nth-child(2)::before { content: "\f0ec"; }
.md-affil-etapes p:nth-child(3)::before { content: "\f07a"; }
.md-affil-etapes p:nth-child(4)::before { content: "\f153"; }

.md-affil-bandeau {
    margin: 30px 0 70px;
}

.md-affil-bandeau img {
    border-radius: 30px;
}

.md-affil-fin {
    margin-top: 70px;
}

@media only screen and (max-width: 767px) {
    .md-affil-etapes > .wp-block-group__inner-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }
}

/* Fiche produit : délai de fabrication et date limite de Noël sous le bouton d'ajout au panier */
.modani-delai-bouton {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 14px;
    margin: 14px 0 0;
    font-size: 14px;
    line-height: 1.5;
    color: #333;
}

.modani-delai-texte::before {
    content: "\f017";
    margin-right: 7px;
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
    color: #4a5bb5;
}

.modani-delai-noel {
    padding: 3px 12px;
    border-radius: 20px;
    background: #fdefed;
    color: #222;
    font-weight: 600;
}

.modani-delai-noel::before {
    content: "\f06b";
    margin-right: 7px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: #e58fa6;
}

/* ======================================================================
   1.9.0 (04/10/2026), validé par Loïc. Tout ce qui suit s'ajoute à la
   version restaurée du 03/10, rien n'y est remplacé.
   ====================================================================== */

/* Accueil : sous-titre et boutons du hero, posés sur l'image à partir de
   768 px (le positionnement du bloc est dans modani_hero_css). */
.md-hero-texte h1 {
    margin-bottom: 14px;
}

.md-hero-sous-titre {
    max-width: 640px;
    margin: 0 auto 22px;
    font-size: 16px;
    line-height: 1.6;
}

.md-hero-ctas {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

@media only screen and (min-width: 768px) {
    .md-hero .md-hero-texte.md-large {
        max-width: min(760px, 84%);
    }

    .md-hero .md-hero-texte h1 {
        margin-bottom: 12px;
    }

    .md-hero .md-hero-sous-titre {
        color: #222;
        margin-bottom: 18px;
    }

    .md-hero .md-cta-secondaire {
        background: #fff;
    }
}

/* Accueil : six collections, intro en pleine largeur au-dessus. */
.md-collections-grille.md-collections-six {
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.md-collections-six .md-collections-intro {
    grid-column: 1 / -1;
    text-align: center;
    padding: 22px;
}

.md-collections-six .md-collections-intro h2 {
    text-align: center;
}

.md-collections-grille.md-collections-six .md-collection {
    min-height: 0;
    aspect-ratio: 4 / 3;
}

/* Accueil : best-sellers en grille. */
.md-selection ul.products {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin: 24px 0 8px;
}

.md-selection ul.products > li.product {
    width: auto;
    margin: 0;
    float: none;
}

@media only screen and (max-width: 1024px) {
    .md-collections-grille.md-collections-six {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media only screen and (max-width: 767px) {
    .md-collections-grille.md-collections-six {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .md-collections-grille.md-collections-six .md-collection {
        aspect-ratio: 4 / 3;
    }

    .md-collections-six .md-collection h3 {
        font-size: 14px;
        margin: 0 10px 10px;
        padding: 10px 12px;
        width: calc(100% - 20px);
    }

    .md-selection ul.products {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
}

/* Fiche produit : « À partir de », réassurance, navigation retirée. */
.md-a-partir-de {
    font-size: 0.6em;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.md-reassurance {
    list-style: none;
    margin: 18px 0 0;
    padding: 14px 18px;
    background: #fdefed;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.5;
}

.md-reassurance li {
    position: relative;
    padding-left: 22px;
    margin: 0 0 6px;
}

.md-reassurance li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #fcd1db;
}

.md-reassurance li:last-child {
    margin-bottom: 0;
}

.single-product .owp-product-nav-wrap,
.single-product .owp-product-nav {
    display: none !important;
}

/* Encart « pièce faite main » des fiches (remplace l'ancien bloc ATTENTION). */
.md-sur-mesure {
    background: #fdefed;
    border-left: 3px solid #fcd1db;
    padding: 12px 16px;
    margin: 20px 0;
}

/* Panier et commande : plus de « Compte À Rebours De Noël ». */
.woocommerce td.product-name,
.woocommerce td.product-name a,
.woocommerce td.product-name .variation,
.woocommerce td.product-name .variation dt,
.woocommerce td.product-name .variation dd,
.woocommerce-checkout-review-order-table td.product-name,
#shipping_method label {
    text-transform: none;
}

/* 1.9.0, points 7 à 10 validés le 04/10/2026. */

/* Fiche produit sur mobile : première photo recadrée en 4/5 pour que le prix
   soit visible sans défiler. */
@media only screen and (max-width: 767px) {
    .single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:first-child img {
        aspect-ratio: 4 / 5;
        object-fit: cover;
        width: 100%;
        height: auto;
    }
}

/* Panier : code promo replié derrière un lien. */
.md-promo-lien {
    background: none;
    border: 0;
    padding: 0;
    margin: 0 0 8px;
    color: #4a5bb5;
    font-size: 14px;
    text-decoration: underline;
    cursor: pointer;
}

.woocommerce-cart-form .coupon.md-promo-replie {
    display: none !important;
}

/* Commande : vignette dans le récapitulatif. */
.md-recap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.md-recap-vignette {
    width: 48px;
    height: 48px;
    object-fit: cover;
    border-radius: 50%;
    flex: 0 0 48px;
}

/* Fiche produit : estimation de livraison sous le délai. */
.modani-delai-estimation {
    flex-basis: 100%;
    color: #555;
    font-size: 13px;
}

/* Fiche produit : choix de variation en vignettes photo (validé le 04/10/2026). */
.md-vignettes-aide {
    margin: 0 0 8px;
    font-size: 13px;
    color: #666;
}

.md-vignettes {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
}

.md-vignettes li {
    margin: 0;
    padding: 6px 6px 8px;
    border: 2px solid #e6e6e6;
    border-radius: 14px;
    background: #fff;
    text-align: center;
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s;
}

.md-vignettes li:hover,
.md-vignettes li:focus-visible {
    border-color: #c7cff0;
    outline: none;
}

.md-vignettes li.md-vignette-active {
    border-color: #4a5bb5;
    box-shadow: 0 0 0 2px #e6eafb;
}

.md-vignettes img {
    display: block;
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 10px;
    margin-bottom: 7px;
}

.md-vignette-nom {
    display: block;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 600;
    color: #222;
}

.md-vignette-prix {
    display: block;
    margin-top: 2px;
    font-size: 13px;
    color: #4a5bb5;
}

/* 1.9.7 : seules les listes déroulantes remplacées par des vignettes sont
   cachées (elles restent dans le code pour WooCommerce). Un produit peut
   garder une liste pour un autre choix. Les lignes en vignettes passent en
   pleine largeur, le nom du choix au-dessus. */
form.variations_form select.md-select-cache {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden;
    clip: rect(0 0 0 0);
    margin: 0;
    padding: 0;
    border: 0;
    opacity: 0;
}

form.variations_form table.variations tr.md-ligne-vignettes,
form.variations_form table.variations tr.md-ligne-vignettes th,
form.variations_form table.variations tr.md-ligne-vignettes td {
    display: block;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    text-align: left;
}

form.variations_form table.variations tr.md-ligne-vignettes th,
form.variations_form table.variations tr.md-ligne-vignettes td.label {
    padding-bottom: 6px;
}

form.variations_form table.variations tr.md-ligne-vignettes .md-vignettes {
    margin-bottom: 10px;
}

.md-vignettes.md-vignettes-nombreuses {
    grid-template-columns: repeat(4, 1fr);
}

.md-vignettes li.md-vignette-indispo {
    opacity: .35;
    cursor: not-allowed;
}

@media only screen and (max-width: 767px) {
    .md-vignettes {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Plus de 4 options : 3 par ligne sur mobile pour ne pas allonger la
       fiche, nom sur deux lignes au plus. */
    .md-vignettes.md-vignettes-nombreuses {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
    }

    .md-vignettes.md-vignettes-nombreuses .md-vignette-nom {
        font-size: 12px;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        overflow: hidden;
    }
}

/* PDF gratuits : téléchargement direct puis newsletter, à la place du panier. */
.md-pdf-gratuit {
    margin: 10px 0 24px;
}

.md-pdf-bouton {
    display: inline-block;
    margin: 0 8px 10px 0;
}

.md-pdf-note {
    margin: 4px 0 18px;
    font-size: 13px;
    color: #666;
}

.md-pdf-newsletter {
    padding: 16px 18px;
    border-radius: 12px;
    background: #fdefed;
}

.md-pdf-newsletter-titre {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.5;
}

.md-pdf-newsletter #mc_embed_signup {
    width: 100% !important;
    background: none !important;
    font: inherit !important;
}

.md-pdf-newsletter #mc_embed_signup .mc-field-group input {
    width: 100%;
    padding: 9px 14px;
    border: 1px solid #e3e3e3;
    border-radius: 30px;
}

.md-pdf-newsletter #mc_embed_signup input[type="submit"] {
    margin-top: 6px;
    padding: 11px 28px;
    border: 0;
    border-radius: 30px;
    background: #fcd1db !important;
    color: #222 !important;
    font-weight: 600;
    cursor: pointer;
}

/* Correctifs du 05/10/2026 : puce native en double sur la réassurance ;
   le petit prix de variation sous les vignettes est masqué, le prix du haut
   suit la vignette choisie (voir vignettes.js). */
.woocommerce div.product .summary ul.md-reassurance,
ul.md-reassurance {
    list-style: none !important;
    margin-left: 0 !important;
    padding-left: 18px;
}

.woocommerce div.product .summary ul.md-reassurance li,
ul.md-reassurance li {
    list-style: none !important;
}

form.variations_form.md-avec-vignettes .woocommerce-variation-price {
    display: none;
}

.summary > .price.md-prix-variation .md-a-partir-de {
    display: none;
}

/* Fiche produit : « L'essentiel », résumé en puces en tête de description. */
.md-essentiel {
    margin: 0 0 26px;
    padding: 16px 20px;
    background: #f7f8fe;
    border-left: 3px solid #d3dbf8;
    border-radius: 4px;
}

.md-essentiel-titre {
    margin: 0 0 8px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    color: #222;
}

.md-essentiel ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0;
}

.md-essentiel li {
    position: relative;
    padding-left: 18px;
    margin: 0 0 6px;
    font-size: 15px;
    line-height: 1.55;
    list-style: none !important;
}

.md-essentiel li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #4a5bb5;
}

.md-essentiel li:last-child {
    margin-bottom: 0;
}

/* PDF gratuit : « Gratuit » à la place de 0,00 €, formulaire Formidable. */
.md-gratuit {
    font-weight: 700;
    color: #4a5bb5;
}

.md-pdf-gratuit .frm_forms {
    margin-top: 10px;
}

.md-pdf-gratuit .frm_form_field {
    margin-bottom: 12px;
}

.md-pdf-gratuit input[type="email"] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #e3e3e3;
    border-radius: 30px;
}

.md-pdf-gratuit .frm_button_submit {
    padding: 12px 28px;
    border: 1px solid #000;
    border-radius: 30px;
    background: #fcd1db;
    color: #000;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
}

/* 1.9.2 : plus de puce native à côté des vignettes de variation. */
.woocommerce div.product form.cart ul.md-vignettes,
ul.md-vignettes {
    list-style: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.woocommerce div.product form.cart ul.md-vignettes li,
ul.md-vignettes li {
    list-style: none !important;
    display: block;
}

ul.md-vignettes li::marker {
    content: "";
}

/* ======================================================================
   1.9.4 (05/10/2026) : retours de Virginie.
   ====================================================================== */

/* Accueil : un espace entre le bandeau et « Les collections ». */
.home #content.site-content > section.md-hero {
    margin-bottom: 40px !important;
}

/* Accueil : le nom de la collection sous la photo, qui reste entière. */
.md-collections-grille .md-collection.md-collection-sous {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    aspect-ratio: auto;
    padding: 0;
    border-radius: 24px;
    background: #fdefed;
    overflow: hidden;
}

.md-collection-sous .md-collection-image {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-size: cover;
    background-position: center;
    transition: transform .3s ease;
}

.md-collection-sous:hover .md-collection-image,
.md-collection-sous:focus .md-collection-image {
    transform: scale(1.03);
}

.md-collections-grille .md-collection.md-collection-sous h3 {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 14px 12px;
    border-radius: 0;
    background: #fdefed;
    font-size: 17px;
    line-height: 1.3;
}

.md-collection-sous:hover h3,
.md-collection-sous:focus h3 {
    background: #fcd1db;
}

@media only screen and (max-width: 767px) {
    .md-collections-grille .md-collection.md-collection-sous {
        aspect-ratio: auto;
        border-radius: 18px;
    }

    .md-collections-grille .md-collection.md-collection-sous h3 {
        margin: 0;
        padding: 10px 8px;
        width: 100%;
        font-size: 14px;
    }
}

/* Accueil : « Les plus commandés ». OceanWP imposait 50 % de largeur à
   chaque produit dans la case de la grille : petite image calée à gauche. */
.md-selection ul.products > li.product,
.md-selection ul.products > li.product.col {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
}

.md-selection ul.products li.product .product-inner {
    width: 100%;
    padding: 0;
}

.md-selection ul.products li.product .woo-entry-image,
.md-selection ul.products li.product .woo-entry-image img {
    width: 100%;
}

.md-selection ul.products li.product .woo-entry-inner li.category,
.md-selection ul.products li.product .woo-entry-inner li.rating {
    display: none;
}

.md-selection ul.products li.product .woo-entry-inner li.title h2,
.md-selection ul.products li.product .woo-entry-inner li.title a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    font-size: 15px;
    line-height: 1.35;
}

@media only screen and (max-width: 767px) {
    .md-selection ul.products li.product .woo-entry-inner li.title h2,
    .md-selection ul.products li.product .woo-entry-inner li.title a {
        font-size: 13px;
    }

    .md-selection ul.products li.product .woo-entry-inner li.btn-wrap {
        display: none;
    }
}

/* Commande : lien pour modifier le panier et retirer un article. */
.md-commande-modifier {
    margin: 0 0 12px;
    font-size: 14px;
}

.md-commande-modifier a,
.md-retirer {
    color: #4a5bb5;
    text-decoration: underline;
}

.md-retirer {
    display: inline-block;
    margin-top: 4px;
    font-size: 12px;
}

/* ======================================================================
   1.9.5 (05/10/2026) : retours de Virginie, suite.
   ====================================================================== */

/* Pied de page : le logo est un carré de 500 px dont le haut et le bas sont
   transparents. On n'affiche que la partie utile, pour que le logo commence
   à la même hauteur que les titres des autres colonnes. */
.md-pied-marque img {
    width: 170px;
    max-width: 100%;
    height: auto;
    aspect-ratio: 490 / 275;
    object-fit: cover;
    object-position: center;
    margin: 0 0 10px;
}

/* Fiche produit : prix des suppléments YayExtra visibles sans survol. */
.md-supp-prix {
    margin-left: 4px;
    font-weight: 600;
    color: #4a5bb5;
    white-space: nowrap;
}

.md-prix-supp {
    display: block;
    margin-top: 2px;
    font-size: 13px;
    font-weight: 400;
    color: #555;
}

/* Fiche produit : la vidéo mise en avant dans la description. */
.md-video-produit {
    margin: 0 0 32px;
    padding: 22px 22px 18px;
    border-radius: 20px;
    background: #fdefed;
    text-align: center;
}

.md-video-produit h2 {
    margin: 0 0 6px;
    font-size: 22px;
    line-height: 1.3;
}

.md-video-produit p {
    max-width: 520px;
    margin: 0 auto 14px;
    font-size: 15px;
    line-height: 1.55;
}

.md-video-produit .modani-video {
    margin: 0 auto;
}

/* ======================================================================
   1.9.8 (05/10/2026) : vidéo des fiches, espaces entre les sections.
   ====================================================================== */

/* Vidéo des fiches : OceanWP entoure la vidéo d'un paragraphe
   « responsive-video-wrap » qui réserve sa hauteur, et un paragraphe vide
   suit. Les deux restaient roses et vides autour de la vidéo. */
.md-video-produit p:empty,
.md-video-produit p.responsive-video-wrap:not(:has(iframe)) {
    display: none !important;
}

.md-video-produit p.responsive-video-wrap {
    height: auto !important;
    padding: 0 !important;
}

.md-video-produit {
    margin-bottom: 24px;
    padding: 20px 18px;
}

.md-video-produit .modani-video--verticale {
    width: 100%;
    max-width: 260px;
}

/* Sur ordinateur, vidéo verticale à droite et texte à gauche : l'encart
   prend la hauteur de la vidéo, sans vide autour. */
@media (min-width: 768px) {
    .md-video-produit:has(.modani-video--verticale) {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 260px;
        grid-template-rows: 1fr auto auto 1fr;
        column-gap: 36px;
        padding: 24px 28px;
        text-align: left;
    }

    .md-video-produit:has(.modani-video--verticale) > h2 {
        grid-column: 1;
        grid-row: 2;
        margin: 0 0 10px;
        font-size: 24px;
    }

    .md-video-produit:has(.modani-video--verticale) > h2 + p {
        grid-column: 1;
        grid-row: 3;
        max-width: none;
        margin: 0;
    }

    .md-video-produit:has(.modani-video--verticale) .modani-video {
        grid-column: 2;
        grid-row: 1 / 5;
        margin: 0;
    }
}

@media (max-width: 767px) {
    .md-video-produit {
        padding: 18px 14px 16px;
    }

    .md-video-produit h2 {
        font-size: 19px;
    }

    .md-video-produit p {
        margin-bottom: 12px;
        font-size: 14px;
    }
}

/* Espaces entre les sections, ordinateur puis mobile. */
body:not(.home) #main #content-wrap {
    padding-top: 28px;
    padding-bottom: 40px;
}

.home #main #content-wrap {
    padding: 0 !important;
}

.home #content.site-content > section {
    margin-bottom: 48px;
}

.home #content.site-content > section.md-hero {
    margin-bottom: 32px !important;
}

.home #content.site-content > section.md-collections {
    padding-bottom: 0;
}

/* Bloc d'avis Google : tant que le widget est masqué, pas d'espace vide. */
.home #content.site-content > section.md-avis:has(.ti-widget[style*="height: 0"]) {
    margin-bottom: 0;
}

.home #content.site-content > section:last-of-type {
    margin-bottom: 48px;
}

.single-product .modani-fiche-bas {
    row-gap: 28px;
    padding-top: 8px;
}

.single-product .related.products,
.single-product .upsells.products {
    margin-top: 36px !important;
}

.md-bons-plans-titre {
    margin-top: 40px !important;
}

.md-bons-plans {
    margin: 20px auto 0 !important;
}

.page .entry .md-chapo {
    margin-bottom: 22px;
}

@media (max-width: 767px) {
    body:not(.home) #main #content-wrap {
        padding-top: 18px;
        padding-bottom: 28px;
    }

    .home #content.site-content > section {
        margin-bottom: 36px;
    }

    .home #content.site-content > section.md-hero {
        margin-bottom: 24px !important;
    }

    .home #content.site-content > section:last-of-type {
        margin-bottom: 32px;
    }

    .single-product div.product .summary {
        margin-bottom: 20px;
    }

    .single-product .modani-fiche-bas {
        row-gap: 22px;
    }

    .single-product .related.products,
    .single-product .upsells.products {
        margin-top: 28px !important;
    }

    .md-bons-plans-titre {
        margin-top: 32px !important;
    }
}

/* 1.9.13 : OceanWP double chaque liste déroulante d'un faux menu
   (span.theme-select). Quand la liste est remplacée par des vignettes, ce
   faux menu restait visible sous les photos, sans rien faire au clic. */
form.variations_form select.md-select-cache + .theme-select,
form.variations_form tr.md-ligne-vignettes .theme-select {
    display: none !important;
}
