/* ============================================
   COMPARATEUR D'OFFRES - STYLE TABLEAU
   ============================================ */
.comparateur-section {
    background-color: #FFF8F0;
    padding: 20px 0;
}
.comparateur-section h1{margin: 25px 0}
.comparateur-intro {padding-bottom: 60px}
.comparateur-intro p{width: 50%}
body .list-offres-comparateur{padding: 25px 0px 50px 0px}
.comparateur-title {
    font-family: 'Fluent', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 48px;
    font-weight: 600;
    color: #224A36;
    margin-bottom: 16px;
    letter-spacing: -0.5px;
}
.comparateur-subtitle {
    font-family: 'Fluent', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 20px;
    color: #224A36;
    opacity: 0.7;
    font-weight: 400;
}
/* ============================================
   EN-TÊTES DES COLONNES
   ============================================ */
.comparateur-headers {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 10px;
}
.header-column {
    background: white;
    overflow: hidden;
    border-bottom: 1px solid rgba(19, 57, 61, 0.20);
}
.offre-select {
    width: 100%;
    padding: 14px 40px 14px 16px;
    font-family: 'Fluent-Medium';
    font-size: 20px;
    font-weight: 600;
    color: #224A36;
    background: white;
    border: 2px solid rgba(34, 74, 54, 0.1);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23224A36' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    outline: none;
}
.column-prices {
    text-align: center;
    padding: 24px 20px;
}
.price-day {
    color: #13393D;
    margin-bottom: 11px;
    font-family: 'Fluent-Medium';
    font-size: 16px;
    font-weight: 600;
}
.price-month {
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
    font-family: 'Fluent-Bold';
}
.column-button {padding: 0 24px 24px}
.offre-btn {
    display: block;
    width: 100%;
    font-family: 'Fluent-Regular';
    font-size: 18px;
    text-align: center;
    color: #224A36;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    text-decoration: underline;
}
.offre-btn:hover {opacity: 0.8}
/* ============================================
   SECTIONS DE COMPARAISON
   ============================================ */
.comparateur-sections {
    background: white;
    overflow: hidden;
}
.comparison-section {padding: 30px 0px}
.comparison-section:last-child {border-bottom: none}
.section-icon-header {
    text-align: center;
    margin-bottom: 12px;
    color: #224A36;
}
.section-title-main {
    font-family: 'Fluent-Bold';
    font-size: 30px;
    font-weight: 700;
    color: #13393D;
    text-align: left;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(19, 57, 61, 0.20);
}
.comparison-section:nth-of-type(1) .section-title-main{border-bottom: none}
.comparison-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.comparison-row:last-child {margin-bottom: 0}
.comparison-cell {
    text-align: center;
    font-family: 'Fluent', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Cellules type activité (valeur + label) */
.cell-value {
    font-size: 24px;
    font-weight: 700;
    color: #224A36;
    margin-bottom: 4px;
}
.cell-label {
    font-size: 13px;
    color: #224A36;
    opacity: 0.7;
    line-height: 1.4;
}
/* Cellules type texte simple */
.cell-text {
    font-size: 18px;
    font-weight: 500;
    color: #224A36;
    text-align: center;
    font-family: 'Fluent-Regular';
}
/* Cellules type service (icône + label) */
.cell-service {
    display: flex;
    align-items: center;
    gap: 12px;
    text-align: left;
    padding: 8px 0;
}
.service-icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #224A36;
}
.service-icon svg {
    width: 20px;
    height: 20px;
}
.service-label {
    flex: 1;
    font-size: 14px;
    color: #224A36;
    line-height: 1.4;
}
/* ============================================
   NOUVELLE STRUCTURE FLEXIBLE ACF
   ============================================ */
body{overflow: visible}
.comparateur-headers{
    top: 0;
    position: sticky;
    background: white;
    z-index: 99;
    padding-top: 25px;
}
/* Conteneur de cellule avec contenu */
.cell-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 0;
}
/* Icône dans une cellule */
.cell-icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px;
}
.cell-icon img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    width: 32px;
    margin-bottom: 13px;
}
/* Chiffre (affiché en GROS) */
.cell-chiffre {
    font-size: 30px;
    font-weight: 700;
    color: #13393D;
    font-family: 'Fluent-Bold';
    margin-bottom: 13px;
}
/* Titre (affiché un peu plus gros que le texte) */
.cell-titre {
    font-size: 18px;
    font-weight: 700;
    color: #13393D;
    text-align: center; 
  
    font-family: 'Fluent-Bold';
}
/* Texte (taille normale) */
.cell-texte {
    font-size: 18px;
    color: #13393D;
    text-align: center;
    font-weight: 500;
    font-family: 'Fluent-Regular';
    line-height: 20px;
}

.cell-titre span,
.cell-texte span{
    opacity: 0.65
}
.cell-texte b{font-family: 'Fluent-Bold'}
/* Cellule vide (affiche "-") */
.cell-empty {
    padding: 30px 0;
    font-size: 18px;
    color: #13393D;
    text-align: center;
    font-weight: 600;
    font-family: 'Fluent-Regular';
    line-height: 20px;
}


.theme--service-d-urgence  .price-month,
.theme--service-d-urgence  select,
.theme--gestion-services .price-month,
.theme--gestion-services select{
    color: #EA612B;
}
.theme--gardes-mixtes .price-month,
.theme--gardes-mixtes select{
    color: #4B95EB;
}
.theme--gardes-canines .price-month,
.theme--gardes-canines select{
    color: #9365C5;
}
.theme--combine-24h-24 .price-month,
.theme--combine-24h-24 select{
    color: #E350A4;
}
.theme--secretariat .price-month,
.theme--secretariat select{
    color: #FBBF33;
}

/* ============================================
   ANIMATIONS
   ============================================ */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.header-column {
    opacity: 0;
    animation: fadeInUp 0.6s ease forwards;
}
.header-column:nth-child(1) {animation-delay: 0.1s}
.header-column:nth-child(2) {animation-delay: 0.2s}
.header-column:nth-child(3) {animation-delay: 0.3s}

/* ============================================
   RESPONSIVE
   ============================================ */

/* Tablette */
@media (max-width: 1024px) {
    .comparateur-title {font-size: 40px}
    .comparateur-subtitle {font-size: 18px}
    .comparateur-headers {gap: 20px}
     .price-month {font-size: 23px}
    .offre-select{font-size: 17px;}
}
/* Mobile large */
@media (max-width: 767px) {
    .comparateur-intro p {width: 100%}
    .comparateur-section {padding: 60px 0}
    .comparateur-title {font-size: 32px}
    .comparateur-subtitle {font-size: 16px}
    .comparateur-headers {gap: 5px}
    .comparateur-sections {
        border-radius: 20px;
        margin-top: 24px;
    }
    .comparison-row {gap: 16px}
    .comparison-section {
        padding: 32px 0px;
        padding-top: 0px;
    }
    .section-title-main {
        font-size: 20px;
        margin-bottom: 24px;
    }
    .list-offres-comparateur .container{
        padding-left: 10px;
        padding-right: 10px;
    }
    .cell-chiffre {
        font-size: 23px;
        margin-bottom: 5px;
    }
    .cell-titre {font-size: 14px}
    .cell-texte {font-size: 14px}
    .cell-service {justify-content: center}
    .column-prices {padding: 15px 0px}
    .header-column{
        position: relative;
        border: none;
    }
    .column-button {padding: 0 0px 20px}
    .header-column:before{
        content: '';
        position: absolute;
        left: 0;
        width: 85%;
        height: 1px;
        background: rgba(19, 57, 61, 0.20);
        bottom: 0;
        right: 0;
        margin: auto;
    }
    .header-column:nth-child(3),
    .comparison-row .comparison-cell:nth-child(3){
        display: none;
    }
    .comparison-row,
    .comparateur-headers {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* Mobile petit */
@media (max-width: 480px) {
    .comparateur-section {padding: 40px 0}
    .comparateur-title {font-size: 28px}
    .comparateur-subtitle {font-size: 15px}
    .offre-select {
        font-size: 14px;
        padding: 14px 9px;
    }
    .price-month {font-size: 16px}
    .price-day {font-size: 13px}
    .offre-btn {font-size: 15px}
    .cell-value {font-size: 20px}
    .cell-label {font-size: 12px}
    .section-title-main {font-size: 18px}
}
/* Smooth scroll */
html {scroll-behavior: smooth}