/* ============================================
   VARIABLES CSS - Couleurs et espacements
   ============================================ */
:root {
    --primary-color: #C0573C;
    --secondary-color: #4a90e2;
    --text-dark: #2c3e50;
    --text-muted: #666666;
    --bg-light: #f8f9fa;
    --border-light: rgba(0, 0, 0, 0.08);
    --shadow-sm: 0 4px 10px rgba(0, 0, 0, 0.12);
    --shadow-md: 0 6px 15px rgba(0, 0, 0, 0.15);
    --shadow-lg: 0 10px 30px rgba(0, 0, 0, 0.08);
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 15px;
}

/* ============================================
   CACHE ÉLÉMENT HEADER (écrans > 992px)
   ============================================ */
@media (min-width: 992px) {
    #astroid-header > div > div:nth-child(4) > div:nth-child(2) {
        display: none !important;
    }
}

/* ============================================
   IMAGES GÉNÉRIQUES (.img) - Articles
   ============================================ */
.img {
    float: left !important;
    margin-right: 25px !important;
    margin-bottom: 15px !important;
    max-width: 60% !important;
    border-radius: var(--radius-md) !important;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2), 0 3px 6px rgba(0, 0, 0, 0.15) !important;
    border: 1px solid var(--border-light) !important;
    transition: all 0.3s ease !important;
}

.img:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 18px rgba(0, 0, 0, 0.25), 0 5px 10px rgba(0, 0, 0, 0.18) !important;
}

/* Nettoyage des floats pour les conteneurs classiques */
.article-body::after,
.item-body::after,
.article-content::after,
.item-full::after {
    content: "" !important;
    display: table !important;
    clear: both !important;
}

/* ============================================
   ARTICLE COMPLET - Enveloppement de l'image
   ============================================ */

/* 1. L'image flotte à gauche pour laisser le texte s'enrouler */
.view-article .item-image,
.view-article .pull-left.item-image,
.view-article .as-width-xxsmall,
.view-article .astroid-article-full-image,
.view-article .article-full-image,
.view-article figure.item-image {
    width: max-content !important; 
    max-width: 50% !important;
    margin: 0 20px 5px 0 !important; /* Marge bas unifiée à 5px */
    padding: 0 !important;
    display: block !important;
    clear: none !important;
}

/* ============================================
   RÉDUCTION ESPACE IMAGE ↔ TITRE/TEXTE
   ============================================ */

.view-article .astroid-article-pageheading {
    margin-bottom: 8px !important;
}

.view-article .astroid-article-pageheading h1,
.view-article .astroid-article-pageheading h2 {
    margin-top: 0 !important;
    margin-bottom: 5px !important;
}

.view-article .astroid-article-pageheading h1::after,
.view-article .astroid-article-pageheading h2::after {
    margin: 6px auto 0 auto !important;
}

.view-article .astroid-article-header,
.view-article .article-header,
.view-article .page-header,
.view-article .article-info-container,
.view-article .article-body,
.view-article .item-body,
.view-article .item-full,
.view-article .article-content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.view-article figure {
    margin: 0 20px 5px 0 !important;
}
.view-article figcaption {
    margin-top: 5px !important;
    padding: 0 !important;
}

/* 2. Style de l'image elle-même */
.view-article .item-image img,
.view-article .pull-left.item-image img,
.view-article .as-width-xxsmall img,
.view-article .astroid-article-full-image img,
.view-article .article-full-image img,
.view-article figure.item-image img {
    width: auto !important; 
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-md) !important;
    object-fit: cover !important;
}

/* 3. On libère le titre et le texte pour qu'ils puissent remonter */
.view-article .astroid-article-header,
.view-article .article-header,
.view-article .page-header,
.view-article .article-info-container,
.view-article .article-body {
    display: block !important;
    clear: none !important; 
    float: none !important;
    width: auto !important;
}

/* ============================================
   ACCUEIL - Cercle (images en vedette)
   ============================================ */
.view-featured .img-accueil,
.blog-featured .img-accueil {
    width: 200px !important;
    height: 200px !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    margin: 0 auto 20px auto !important;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2), 0 4px 8px rgba(0, 0, 0, 0.15) !important;
    border: 3px solid rgba(255, 255, 255, 0.9) !important;
    transition: all 0.3s ease !important;
    float: none !important;
}

.view-featured .img-accueil:hover,
.blog-featured .img-accueil:hover {
    transform: scale(1.05) !important;
}

.view-featured .img-accueil img,
.blog-featured .img-accueil img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
}

/* ============================================
   BLOG - Image petite à gauche + texte à droite
   ============================================ */
.view-category.layout-blog .blog-item .item-content {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 25px !important;
    background: transparent !important;
    padding: 15px 0 !important;
}

.view-category.layout-blog .blog-item .item-image {
    flex: 0 0 250px !important;
    max-width: 250px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    overflow: hidden !important;
    height: auto !important;
}

.view-category.layout-blog .blog-item .img-accueil {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    border-radius: var(--radius-sm) !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
    box-shadow: var(--shadow-sm) !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    transition: all 0.3s ease !important;
}

.view-category.layout-blog .blog-item .img-accueil:hover {
    transform: scale(1.03) !important;
}

.view-category.layout-blog .blog-item .item-info-container,
.view-category.layout-blog .blog-item .item-body {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
}

.view-category.layout-blog .blog-item {
    border-bottom: 1px solid var(--border-light) !important;
    margin-bottom: 20px !important;
    padding-bottom: 15px !important;
}

.view-category.layout-blog .blog-item .item-image img,
.view-category.layout-blog .blog-item .item-media-top .item-image img,
.view-category.layout-blog .blog-item .item-media-top figure img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    border-radius: var(--radius-sm) !important;
    box-shadow: var(--shadow-sm) !important;
    display: block !important;
}

.view-category.layout-blog .blog-item:nth-child(even) .item-content {
    flex-direction: row-reverse !important;
}

.view-category.layout-blog .blog-item:nth-child(odd) .item-content {
    flex-direction: row !important;
}

/* ============================================
   TABLEAUX STYLISÉS
   ============================================ */
.table-container {
    width: 100%;
    margin: 20px 0;
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

.table-intro {
    margin-bottom: 15px;
    font-size: 1.1rem;
    color: #4b5563;
    line-height: 1.5;
}

.modern-styled-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 25px 0;
    margin-left: -25px;
}

.modern-styled-table th {
    background-color: var(--primary-color);
    color: #ffffff;
    padding: 15px;
    text-transform: uppercase;
    font-size: 0.8rem;
    letter-spacing: 1px;
    text-align: center;
    border-radius: 4px 4px 0 0;
}

.modern-styled-table td {
    padding: 15px;
    border-bottom: 1px solid rgba(192, 87, 60, 0.15);
    vertical-align: middle;
    background-color: #ffffff;
}

.modern-styled-table tbody tr:nth-child(even) td {
    background-color: rgba(192, 87, 60, 0.03);
}

.col-img {
    width: 140px;
    text-align: center;
}

.col-img a {
    display: inline-block;
    transition: transform 0.2s ease-in-out;
}

.col-img img {
    max-width: 100px;
    height: auto;
    display: block;
    margin: 0 auto;
    border-radius: 3px;
}

.col-img a:hover {
    transform: scale(1.08);
}

.col-txt {
    text-align: left;
    line-height: 1.6;
    color: #374151;
}

.modern-styled-table tbody tr:hover td {
    background-color: rgba(192, 87, 60, 0.08);
    border-bottom-color: var(--primary-color);
}

/* ============================================
   NAVIGATION - Bouton spécial loupe/recherche
   ============================================ */
.nav-link.mon-bouton-special {
    background-color: #F8F9FA;
    color: #333 !important;
    border: 1px solid #ddd;
    border-radius: var(--radius-md);
    padding: 8px 18px !important;
    margin-left: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.nav-link.mon-bouton-special:hover {
    background-color: #ffffff;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
    transform: translateY(-1px);
}

.astroid-search-trigger,
.search-icon-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: #333;
    font-size: 18px;
    text-decoration: none;
    transition: all 0.3s ease;
    background: rgba(0, 0, 0, 0.05);
}

.astroid-search-trigger:hover,
.search-icon-link:hover {
    background: rgba(74, 144, 226, 0.1);
    color: var(--secondary-color);
    transform: scale(1.1);
}

.modal-content {
    border-radius: var(--radius-lg);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.modal-header {
    border-bottom: 1px solid #eee;
    padding: 15px 20px;
}

.modal-body {
    padding: 20px;
}

/* ============================================
   PRESTATIONS - Bloc lateral
   ============================================ */
.prestations-container {
    display: flex;
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    background-color: transparent;
    border-radius: var(--radius-md);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
    overflow: hidden;
    max-width: 900px;
    margin: 20px auto;
    border: 1px solid #e0e0e0;
}

.prestations-sidebar {
    background-color: #ffffff;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 15px;
    border-right: 1px solid #eee;
    color: #2c3e50;
    font-style: italic;
    font-size: 1.2rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    align-self: stretch;
    flex-shrink: 0;
    width: 60px;
    text-align: center;
}

.prestations-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.prestation-item {
    transition: background-color 0.3s ease;
    cursor: pointer;
}

.prestation-item:not(:last-child) {
    border-bottom: 1px solid #f0f0f0;
}

.prestation-item:nth-child(1) { background-color: #ffffff; }
.prestation-item:nth-child(2) { background-color: #f8f9fa; }
.prestation-item:nth-child(3) { background-color: #f1f5f9; }

.prestation-item:hover {
    background-color: #e3f2fd !important;
}

.prestation-link {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 12px 30px;
    text-decoration: none;
    color: inherit;
    width: 100%;
    box-sizing: border-box;
    transition: padding 0.3s ease;
}

.prestation-item:hover .prestation-link {
    padding-left: 40px;
}

.prestation-icon {
    color: #34495e;
    font-size: 1.5rem;
    width: 30px;
    text-align: center;
}

.prestation-text-wrapper {
    flex: 1;
}

.prestation-title {
    color: #1a2b3c;
    font-size: 1.15rem;
    font-weight: 700;
    margin: 0;
    display: block;
}

.prestation-desc {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.4;
    margin: 4px 0 0 0;
    font-weight: 400;
}

/* ============================================
   SLIDERS - Logos & Témoignages
   ============================================ */
.logos-slider-wrapper {
    height: 420px;
    overflow: hidden;
    position: relative;
    background: #ffffff;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-lg);
}

.logos-slider {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 15px;
    transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.logo-item {
    background: #fff;
    border: 1px solid #eee;
    border-radius: var(--radius-sm);
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
}

.logo-item img {
    max-width: 85%;
    max-height: 60px;
    object-fit: contain;
}

.testimonials-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 15px;
}

.logos-dots {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    margin-top: 25px !important;
    width: 100% !important;
}

.logos-dots span {
    display: inline-block !important;
    width: 12px !important;
    height: 12px !important;
    background-color: #d1d5db !important; 
    border-radius: 50% !important; 
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.logos-dots span:hover,
.logos-dots span.active,
.logos-dots span.swiper-pagination-bullet-active {
    background-color: var(--primary-color) !important; 
    transform: scale(1.3) !important;
}

.dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
    transition: 0.3s;
}

.dot.active {
    background: #555;
    transform: scale(1.3);
}

.slider-temoignages-natif {
    position: relative;
    background: rgba(255, 255, 255, 0.9);
    border-radius: var(--radius-lg);
    padding: 50px 30px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    min-height: 250px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.slider-temoignages-natif .newsflash-item,
.slider-temoignages-natif .mod-articlesnews__item {
    display: none;
    opacity: 0;
    text-align: center;
    width: 100%;
    transition: opacity 1s ease-in-out;
}

.slider-temoignages-natif .newsflash-item.active,
.slider-temoignages-natif .mod-articlesnews__item.active {
    display: block;
    opacity: 1;
}

.slider-temoignages-natif .newsflash-item p,
.slider-temoignages-natif .mod-articlesnews__item p {
    font-size: 1.2rem;
    line-height: 1.6;
    color: #444;
    font-style: italic;
    margin: 0;
}

/* ============================================
   RÉFÉRENCES (Sidebar)
   ============================================ */
.sidebar-references {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sidebar-references .ref-card {
    display: flex;
    align-items: center;
    padding: 15px;
    background-color: var(--bg-light);
    border-radius: var(--radius-sm);
    text-decoration: none;
    color: #333;
    border-left: 4px solid var(--secondary-color);
    transition: all 0.3s ease;
}

.sidebar-references .ref-card:hover {
    background-color: #ffffff;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
    color: var(--secondary-color);
}

.sidebar-references .ref-icon {
    font-size: 1.5rem;
    color: var(--secondary-color);
    min-width: 35px;
    text-align: center;
    margin-right: 15px;
}

.sidebar-references .ref-content {
    display: flex;
    flex-direction: column;
}

.sidebar-references .ref-content strong {
    font-size: 1rem;
    line-height: 1.2;
    margin-bottom: 4px;
    color: #222;
}

.sidebar-references .ref-content span {
    font-size: 0.85rem;
    color: var(--text-muted);
    font-style: italic;
}

/* ============================================
   TITRE DE PAGE
   ============================================ */
.astroid-article-pageheading {
    background-color: transparent !important;
    color: #222222 !important;
    padding: 0 !important;
    margin-bottom: 20px !important;
    border: none !important;
}

.astroid-article-pageheading h1,
.astroid-article-pageheading h2 {
    font-size: 2.2rem !important;
    text-align: center !important;
    font-weight: 700 !important;
    color: var(--text-dark) !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    letter-spacing: -0.5px !important;
}

.astroid-article-pageheading h1::after,
.astroid-article-pageheading h2::after {
    content: "" !important;
    display: block !important;
    width: 60px !important;
    height: 4px !important;
    background-color: var(--primary-color) !important;
    margin: 15px auto 0 auto !important;
}

/* ============================================
   PROFIL COMPACT CENTRÉ (Photo à gauche)
   ============================================ */
.profile-card-modern.centered-compact {
    max-width: 550px; 
    margin: 0 auto;   
}

.profile-layout {
    display: flex;
    flex-direction: row;
    align-items: center; 
    justify-content: center;
    gap: 30px; 
}

.profile-layout .profile-header {
    flex: 0 0 160px; 
}

.profile-layout .profile-header .img-accueil {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.profile-layout .profile-details {
    flex: 1;
    text-align: left;
}

.profile-layout .profile-footer {
    margin-top: 15px; 
}

@media (max-width: 768px) {
    .profile-layout {
        flex-direction: column; 
        text-align: center;
        gap: 15px;
    }
    .profile-layout .profile-details {
        text-align: center;
    }
}

/* ============================================
   MEDIA QUERIES - RESPONSIVE
   ============================================ */

/* Tablettes (≤ 1024px) */
@media (max-width: 1024px) {
    .view-category.layout-blog .blog-item .item-content {
        flex-direction: row !important;
        gap: 20px !important;
        align-items: center !important;
    }

    .view-category.layout-blog .blog-item .item-image {
        flex: 0 0 200px !important;
        max-width: 200px !important;
    }

    .view-category.layout-blog .blog-item:nth-child(even) .item-content {
        flex-direction: row-reverse !important;
    }

    .view-category.layout-blog .blog-item .item-media-top .item-image img,
    .view-category.layout-blog .blog-item .item-media-top figure img {
        width: 200px !important;
        height: auto !important;
        border-radius: var(--radius-sm) !important;
        box-shadow: var(--shadow-sm) !important;
    }
}

/* Mobiles (≤ 768px) */
@media (max-width: 768px) {
    .offcanvas,
    .astroid-offcanvas-menu,
    .offcanvas-end,
    .offcanvas-start,
    #astroid-offcanvas {
        z-index: 99999 !important;
        width: 100% !important;       
        max-width: 100% !important;   
    }
    
    .view-article .item-image,
    .view-article .pull-left.item-image,
    .view-article .as-width-xxsmall,
    .view-article .astroid-article-full-image,
    .view-article .article-full-image,
    .view-article figure.item-image {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 20px 0 !important;
    }

    /* Blog */
    .view-category.layout-blog .blog-item .item-content {
        flex-direction: column !important;
        gap: 15px !important;
    }

    .view-category.layout-blog .blog-item .item-image,
    .view-category.layout-blog .blog-item .item-media-top .item-image,
    .view-category.layout-blog .blog-item .item-media-top figure {
        flex: 0 0 174px !important;
        width: 174px !important;
        height: 170px !important;
        margin: 0 auto !important;
    }

    .view-category.layout-blog .blog-item .item-info-container,
    .view-category.layout-blog .blog-item .item-body {
        text-align: left !important;
        width: 100% !important;
    }

    /* Annulation des flex inversés pour les enfants pairs/impairs sur mobile */
    .view-category.layout-blog .blog-item:nth-child(even) .item-content,
    .view-category.layout-blog .blog-item:nth-child(odd) .item-content {
        flex-direction: column !important;
    }

    .view-category.layout-blog .blog-item .item-media-top .item-image img,
    .view-category.layout-blog .blog-item .item-media-top figure img,
    .view-category.layout-blog .blog-item .item-image img {
        width: 174px !important;
        height: 170px !important;
        aspect-ratio: auto !important; 
        border-radius: var(--radius-sm) !important;
        box-shadow: var(--shadow-sm) !important;
        object-fit: cover !important;
    }

    /* Prestations */
    .prestations-container {
        flex-direction: column !important;
    }

    .prestations-sidebar {
        writing-mode: horizontal-tb !important;
        transform: none !important;
        border-right: none !important;
        border-bottom: 1px solid #eee !important;
        padding: 10px !important;
        width: 100% !important;
        height: auto !important;
        align-self: stretch !important;
        box-sizing: border-box !important;
    }

    .prestation-item:hover .prestation-link {
        padding-left: 30px !important;
    }
}

/* ============================================
   INTRODUCTION FORMULAIRE (Panache)
   ============================================ */
.form-intro-elegance {
    text-align: center;
    max-width: 550px;
    margin: 0 auto 30px auto;
    padding: 25px 20px;
    background-color: #ffffff;
    border-radius: var(--radius-md);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.form-intro-elegance .form-intro-image {
    margin-bottom: 20px;
}

.form-intro-elegance .form-intro-image img {
    display: block;
    margin: 0 auto;
    border-radius: 50%;
    width: 140px;
    height: 140px;
    object-fit: cover;
    border: 4px solid #ffffff;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12);
    transition: transform 0.3s ease;
}

.form-intro-elegance .form-intro-image img:hover {
    transform: scale(1.05);
}

.form-intro-elegance .intro-promise {
    font-size: 1.05rem;
    color: var(--text-dark);
    font-weight: 500;
    margin-bottom: 12px;
    line-height: 1.5;
}

.form-intro-elegance .intro-subtext {
    font-size: 0.95rem;
    color: var(--text-muted);
    margin-bottom: 18px;
    line-height: 1.4;
}

.form-intro-elegance .intro-asterisk {
    font-style: italic;
    font-size: 0.85rem;
    color: #999999;
}

.form-intro-elegance .intro-action {
    font-size: 1.1rem;
    color: var(--primary-color);
    font-weight: 600;
    margin: 0;
    padding-top: 15px;
    border-top: 1px dashed #eaeaea;
}

/* ============================================
   DESIGN DU FORMULAIRE DE CONTACT
   ============================================ */

.convertforms .cf-label {
    font-weight: 600 !important;
    color: var(--text-dark) !important;
    margin-bottom: 8px !important;
    font-size: 0.95rem !important;
}

.convertforms input[type="text"],
.convertforms input[type="email"],
.convertforms textarea {
    border: 1px solid #d1d5db !important;
    border-radius: var(--radius-sm) !important;
    padding: 14px 18px !important;
    background-color: #fcfcfc !important;
    transition: all 0.3s ease !important;
    color: var(--text-dark) !important;
    font-family: inherit !important;
}

.convertforms input[type="text"]:focus,
.convertforms input[type="email"]:focus,
.convertforms textarea:focus {
    background-color: #ffffff !important;
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 4px rgba(192, 87, 60, 0.15) !important;
    outline: none !important;
}

.convertforms .cf-btn,
.convertforms button[type="submit"] {
    background-color: var(--primary-color) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    padding: 15px 30px !important;
    border-radius: 30px !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 6px 15px rgba(192, 87, 60, 0.25) !important;
    width: 100% !important;
    margin-top: 15px !important;
}

.convertforms .cf-btn:hover,
.convertforms button[type="submit"]:hover {
    background-color: #a34830 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(192, 87, 60, 0.3) !important;
}

/* ============================================
   ICÔNES DANS LES CHAMPS DU FORMULAIRE
   ============================================ */

/* Base commune pour toutes les icônes de formulaire */
.convertforms input.icon-user,
.convertforms input.icon-envelope,
.convertforms textarea.icon-comment,
.convertforms input.icon-building,
.convertforms input.icon-phone {
    padding-left: 45px !important;
    background-repeat: no-repeat !important;
    background-size: 18px !important;
}

/* Positionnement centré pour les inputs (une ligne) */
.convertforms input.icon-user,
.convertforms input.icon-envelope,
.convertforms input.icon-building,
.convertforms input.icon-phone {
    background-position: 15px center !important; 
}

/* Positionnement fixé en haut pour le textarea (multiligne) */
.convertforms textarea.icon-comment {
    background-position: 15px 16px !important; 
}

/* Injections SVG */
.convertforms input.icon-user {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512' fill='%239ca3af'%3E%3Cpath d='M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304H178.3z'/%3E%3C/svg%3E") !important;
}

.convertforms input.icon-envelope {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%239ca3af'%3E%3Cpath d='M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z'/%3E%3C/svg%3E") !important;
}

.convertforms textarea.icon-comment {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%239ca3af'%3E%3Cpath d='M160 368c26.5 0 48 21.5 48 48v16l72.5-54.4c8.3-6.2 18.4-9.6 28.8-9.6H448c8.8 0 16-7.2 16-16V64c0-8.8-7.2-16-16-16H64c-8.8 0-16 7.2-16 16V352c0 8.8 7.2 16 16 16h96zm48 124l-.2 .2-5.1 3.8-17.1 12.8c-4.8 3.6-11.3 4.2-16.8 1.5s-8.8-8.2-8.8-14.3V474.7v-4.5V416H112 64c-35.3 0-64-28.7-64-64V64C0 28.7 28.7 0 64 0H448c35.3 0 64 28.7 64 64V352c0 35.3-28.7 64-64 64H309.3L208 492z'/%3E%3C/svg%3E") !important;
}

.convertforms input.icon-building {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512' fill='%239ca3af'%3E%3Cpath d='M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-32zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16v-32zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16v-32zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16z'/%3E%3C/svg%3E") !important;
}

.convertforms input.icon-phone {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%239ca3af'%3E%3Cpath d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E") !important;
}

/* Masquer la date de modification dans le bloc d'informations de l'article */
dd.modified{
    display: none !important;
}
.astroid-component-section {
  padding-top: 0;
  padding-bottom: 10px; /* à ajuster selon votre goût */
}