.comparison-table {
    width: 100%;
    margin: 2rem 0;
  }
  .comparison-table thead tr.first-row-comparison th{
    border: none !important;
  }
  
    .comparison-table thead th{
      padding: 10px !important;
    }
  .comparison-table h5{
    text-align: left;
  }
  .comparison-table table {
    border-collapse: collapse;
    width: 100%;
    text-align: center;
  }
  body:not(.woocommerce-cart) .main-content table{
    border: transparent !important;
  }
  body:not(.woocommerce-cart) .main-content table tr:nth-child(2n+1){
    background-color: transparent;
  }

  body:not(.woocommerce-cart) .main-content td{
    padding: 0 !important;
  }
  .comparison-table th,
  .comparison-table td {
    border: none !important;
    border-bottom: 1px solid #e4e4e4 !important;
    padding: 0.75rem;
  }
  .comparison-table tr:last-of-type td{
    border-bottom: none !important;
  }
   .comparison-table th:first-of-type{
    width:35%;
   }
  .comparison-table th {
    background: transparent;
    text-transform: uppercase;
    text-align: center !important;
    width:10%;
    padding-bottom: 20px;
  }
  .comparison-table th img{
    width:50px !important;
    margin: 0 auto 5px !important;

  }
  .comparison-table th h5{
    color:#0399B0;
    font-weight: 600 !important;
    text-align: center !important;
    margin-bottom: 0;
    line-height: 1 !important;
  }
    .comparison-table th:first-of-type{
      vertical-align: bottom;
      padding: 0 0 10px 0 !important;
    }
  .comparison-table .desktop-only th:first-of-type h5{
    text-align: left !important;
    color:#000000;
  }
  .comparison-table th p{
    text-transform: none !important;
    color:#546472;
    font-weight: 400;
  }
  .comparison-table tr td .ok,
  .comparison-table tr td .no-ok{
    background-color:#546472;
    border-radius: 50%;
    height:25px;
    width:25px;
    color: #FFF !important;
    fill: #FFF !important;
    display: block;
    line-height: 25px;
    text-align: center;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .comparison-table tr td .ok svg{
    width:16px;
    height:16px;
  }
  .comparison-table tr td .no-ok{
    background-color:#D6D6D6;
    color:#000000;
  }
  .desktop-only {
    display: block;
  }
  
  .mobile-only {
    display: none;
  }

  /*** hightlights ***/

.comparison-table .desktop-only tr.first-row-comparison th.highlight{
    background-color: #0399B0;
    border-radius: 50px 50px 0 0;
    padding: 20px !important;
  }
    .comparison-table thead tr.first-row-comparison th.highlight p{
      font-weight: 700;
      line-height: 1;
      color: #FFF;
    }
.comparison-table .desktop-only th.highlight{
  padding: 0 !important;
  background-color: #0399B0;
}
  .comparison-table .desktop-only th.highlight div{
    padding: 10px;
    border-right: 2px solid #0399B0 !important;
    border-left: 2px solid #0399B0 !important;
    background-color: #FFF;
    border-radius: 50px 50px 0 0;
  }
  .comparison-table tr:not(:last-of-type) td.highlight div{
    border-right: 2px solid #0399B0 !important;
    border-left: 2px solid #0399B0 !important;
  }
  .desktop-only .comparison-table tr td.highlight{
    padding: 0 !important;
    border-bottom: 0 !important;
  }
  .comparison-table tr td.highlight div{
    height: 100%;
    border-right: 2px solid #0399B0 !important;
    border-left: 2px solid #0399B0 !important;
    border-bottom: 1px solid #ddd !important;
    padding: 20px;
  }
  .comparison-table tr:last-of-type td.highlight div{
    border-radius:0 0 50px 50px;
    border-bottom: 2px solid #0399B0 !important;
  }
   .comparison-table th.highlight{
    position: relative;
   }
  .comparison-table img.adottata{
    position: absolute;
    top: -13px;
    left: -13px;
    width: 45px !important;
    height: 45px;
  }
  
  
  @media (max-width: 1024px) {
  /* visibilità sezioni */
  .desktop-only { display: none; }
  .mobile-only  { display: block; }
    body:not(.woocommerce-cart) .main-content td{
    padding: 15px 0 !important;
  }
  /* contenitore che SCROLLA in orizzontale */
  .comparison-scroll {
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;               /* <-- fondamentale per lo scroll */
    overflow-y: visible;
    -webkit-overflow-scrolling: touch; /* inerzia su iOS */
    touch-action: pan-x pan-y;            /* aiuta su Android/Edge */
    overscroll-behavior-x: contain; /* evita bounce del body */
  }

  /* 🔧 RESET layout rotto da regole precedenti */
  .mobile-only .comparison-scroll table tr {
    display: table-row !important;  /* NO flex sui <tr> */
    flex-wrap: initial !important;
  }
  .mobile-only .comparison-scroll table tr td:first-of-type,
  .mobile-only .comparison-scroll table tr th:first-of-type {
    width: auto !important;         /* NO “prima cella = 100%” */
  }

  /* 🔧 su mobile niente width imposte ai th/td (quelle desktop) */
  .mobile-only .comparison-table th,
  .mobile-only .comparison-table td {
    width: auto !important;
  }

  /* TABELLONE più largo del viewport: 5 × 25vw = 125vw  → overflow orizzontale */
  .mobile-only .comparison-table {
    --colvw: 20vw;                  /* 4 colonne visibili (≈100vw), 5ª a scroll */
    border-collapse: collapse;
    table-layout: fixed;            /* rispetta il <colgroup> */
    width: calc(5 * var(--colvw));
    min-width: calc(5 * var(--colvw));
  }

  /* ogni colonna prende la larghezza definita sopra */
  .mobile-only .comparison-table col.plan-col {
    width: var(--colvw) !important;
  }

  /* header: solo allineamento (niente width) */
  .mobile-only .comparison-table thead .plans-row th {
    text-align: center;
    vertical-align: middle;
  }
  .mobile-only .comparison-table thead th{
    padding:30px 10px 10px !important
  }
  .mobile-only .comparison-table thead .plans-row th h5 {
    text-transform: none;
    font-size: .9em;
  }
  .mobile-only .comparison-table thead .first-row-comparison th {
    text-align: center;
  }

  /* riga etichetta (testo feature) a tutta larghezza della tabella */
  .mobile-only .comparison-table .feature-label td[colspan="5"] {
    display: table-cell;
    width: calc(5 * var(--colvw)) !important;
  }

  /* riga valori: 1 cella per colonna (larghezze gestite dal colgroup) */
  .mobile-only .comparison-table .feature-values td {
    text-align: center;
    vertical-align: middle;
  }

  /* gancio strutturale per colonna evidenziata (nessuno stile) */
  .mobile-only .comparison-table thead th.highlight,
  .mobile-only .comparison-table .feature-values td.highlight { }
  .mobile-only .comparison-table .feature-label td{
  border:none !important;
  padding-bottom: 5px !important;
  }
  .mobile .comparison-scroll{
    overflow-y: visible;
  }
  .mobile-only .comparison-table th.highlight:before{
      content:'';
      background-image: url('/wp-content/uploads/2025/09/icon_adottata.png');
      position: absolute;
      top: 0;
      left: calc(50% - 13px);
      width: 26px !important;
      height: 26px;
      background-size: contain;
  }
}

  