.duvidas{
    background-image: url('../imagem/sobre1.png');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;              /* sempre ocupar a largura da tela */
    aspect-ratio: 1440 / 457; /* mantém a proporção original */
}

.faq-section{background-color: #fff; margin-top: 75px;}

.article{
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 177px;
}
.duvidas h6{
    text-align: center;
    font-size: 48px;
    font-weight: 700;
    line-height: 120%;
    color: #fff;
    margin-top: 12px;
}

@media (max-width: 768px){

    .duvidas{
        background-image: url('../imagem/sobre1-mobile.png');
         width: 100%;              /* sempre ocupar a largura da tela */
        aspect-ratio: 390 / 354; /* mantém a proporção original */
    }
    .duvidas img{
        width: 87px;
        height: 78px;
        object-fit: cover;
    }
    .duvidas h6{font-size: 32px; width: 193px;margin: 0 auto; margin-top: 12px;}

    .article{padding-top: 140px;}
}

.faq-wrap{
    max-width: 1120px;
    margin: 0 auto;
}

/*Dúvidas*/

 .card-duvidas {
      position: relative;
      border-radius: 15px;
      overflow: visible;
      padding: 25px;
      width: 100%;
      color: #fff;
      background: url("../imagem/duvidas.png") no-repeat center center/contain; /* sua imagem de fundo */
       max-width: 1120px; /* controla a largura máxima */
       height: 291px;
      margin: 0 auto;
      
    }

    .card-duvidas .conteudo {
      max-width: 60%;
      padding-left: 40px;
    }

    .card-duvidas h2 {
      font-weight: 700;
      font-size: 48px;
      line-height: 120%;
    }
    .conteudo p{
        font-size: 18px;
        line-height: 160%;
        font-weight: 400;
        width: 420px;
    }

    .envolver-btn{
        width: 305px;
        padding-top: 5px;
        padding-left: 7px;
        border-radius: 24px;
        background-color: #fff;
    }
    .card-duvidas .btn-contacto {
    
      color: #272727;
      font-weight: 600;
      font-size: 14px;
      line-height: 160%;
     
      display: inline-flex;
      align-items: center;
      text-decoration: none;
    
    }
    .btn-contacto img{margin-right: 3px;}

    /* imagem da direita */
    .card-duvidas .img-direita {
      position: absolute;
      right: -60px;  /* faz sair para fora */
      bottom: -70px; /* ajusta para sair também em baixo */
      max-width: 40%;
    }

    @media (max-width: 992px) {

        .card-duvidas {
            position: relative;
            border-radius: 15px;
            overflow: visible;
            padding: 35px;
            width: 100%;
            color: #fff;
            background: url("../imagem/duvida-mobile.png") no-repeat center center/contain; /* sua imagem de fundo */
            max-width: 100%; /* controla a largura máxima */
            height: 618px;
            margin: 0;
            text-align: center;
            margin-top: -45px;
            
        }
      .card-duvidas .conteudo {
        max-width: 100%;
   
        padding-left: 0px;
        padding-top: 14px;
        }
      .card-duvidas .img-direita {
        position: relative;
        right: 0;
        bottom: 0;
        margin-top: 35px;
        max-width: 100%;
        display: block;
        margin-left: auto;
        margin-right: auto;
      }
      .envolver-btn{width: 284px; height: 42px; margin: auto;  padding-top: 11px; padding-left: 0;
       }
      .conteudo h2{
        font-size: 32px;
        margin-bottom: 15px;
      }
      .conteudo p{font-size: 16px; text-align: center; width: 284px; margin: auto; margin-bottom: 10px;}

       .card-duvidas .btn-contacto{font-size: 13px;}

      
    }

  
    /*Contato*/

    :root{
      --card-border: #e9ecef;
      --thead-bg: #efefef;
      --muted: #6c757d;
    }

    
    /* ---------- TOP CONTROLS ---------- */
    .top-row { margin: 36px 0 28px; }
    .form-label.custom {
      display:block;
      font-size:13px;
      color:var(--muted);
      margin-bottom:8px;
      text-align:left;
   
      font-size: 16px;
    color: #323b4b;
    font-weight: 400;
    line-height: 145%;
    }

    /* Dropdown button looks like select with image + caret */
    .select-as-btn {
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:8px;
      height:44px;
      border-radius:8px;
      border:1px solid var(--card-border);
      background:#fff;
      padding:6px 12px;
    }
    .select-as-btn .left {
      display:flex;
      align-items:center;
      gap:10px;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .select-as-btn img {
      width:28px;
      height:28px;
      border-radius:50%;
      object-fit:cover;
      flex:0 0 28px;
    }
    .select-as-btn .caret {
      color:var(--muted);
      font-size:14px;
      margin-left:8px;
    }

    /* Dropdown menu items */
    .dropdown-menu .dropdown-item { display:flex; align-items:center; gap:10px; }
    .dropdown-menu .dropdown-item img { width:28px; height:28px; border-radius:50%; object-fit:cover; }

    /* Search input styling */
    .input-group .form-control {
      height:44px;
      border-radius:8px 0 0 8px;
      border:1px solid var(--card-border);
      border-right:0;
    }
    .input-group .btn-search {
      height:44px;
      width:44px;
      border-radius:0 8px 8px 0;
      border:1px solid var(--card-border);
      border-left:0;
      background:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
    }

    /* ---------- MAIN AREA: logo (left) + tables (right) ---------- */
    .main-area {
      max-width: 980px;
      margin: 0 auto 80px;
      display:flex;
      gap:32px;
      align-items:flex-start;
    }

    /* Left logo circle */
    .brand-col {
      flex: 0 0 auto;
      display: flex;
      align-items: flex-start;
      justify-content: center;
      

    }
    .brand-circle {
      width:120px;
      height:120px;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
    }
    .brand-circle img {
      width:100%;
      height:auto;
      display:block;
      object-fit:cover;
    }

    /* Tables column */
    .tables-col { flex:1; }

    /* each table card style */
    .table-card {
      background:#fff;
      border:1px solid var(--card-border);
      border-radius:8px;
      overflow:hidden;
      margin-bottom:18px;
      box-shadow: none;
    }

    /* custom table (no vertical borders) */
    .table-custom {
      width:100%;
      border-collapse: separate;
      border-spacing: 0;
      font-size:14px;
    }
    .table-custom thead th {
      background: var(--thead-bg);
      padding:12px 14px;
      font-weight:600;
      text-align:left;
      border-bottom:1px solid var(--card-border);
    }
    .table-custom tbody td {
      padding:12px 14px;
      vertical-align: middle;
      border-top:1px solid var(--card-border);
    }
    /* Remove vertical borders (important) */
    .table-custom th, .table-custom td {
      border-left: none !important;
      border-right: none !important;
    }
    /* center numeric columns */
    .table-custom td:nth-child(2),
    .table-custom td:nth-child(3) {
      text-align:center;
      white-space:nowrap;
    }

    /* subtle hover on rows */
    .table-custom tbody tr:hover { background: rgba(0,0,0,0.02); }

    .table-custom {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed; /* Mantém largura proporcional */
}

.table-custom th,
.table-custom td {
  padding: 10px;
  text-align: left;
  border-bottom: 1px solid #ddd;
}

.top-row{
    margin-bottom: 55px;
}

/* Desktop: define largura fixa para Valor e Margem */
@media (min-width: 768px) {
  .table-custom th:nth-child(2),
  .table-custom td:nth-child(2) {
    width: 160px;
    text-align: center;
  }

  .main-area{
    margin-top: 0;
}

  .table-custom th:nth-child(3),
  .table-custom td:nth-child(3) {
    width: 120px;
    text-align: center;
  }

  
}

/* Mobile: primeira coluna ocupa mais espaço */
@media (max-width: 767px) {
  .table-custom th:nth-child(1),
  .table-custom td:nth-child(1) {
    width: auto; /* ocupa o resto */
  }

  .top-row{
    width: 90%;
    margin: auto;
    margin-bottom: 30px;
  }

  .table-custom th:nth-child(2),
  .table-custom td:nth-child(2),
  .table-custom th:nth-child(3),
  .table-custom td:nth-child(3) {
    width: 80px; /* valor e margem ficam compactos */
    text-align: center;
  }
}

    /* responsiveness */
    @media (max-width: 991.98px) {
      .main-area { padding:0 16px; gap:20px; }
      .brand-col { flex:0 0 120px; }
    }
    @media (max-width: 575.98px) {
      .main-area { flex-direction:column; align-items:center; }
      .brand-col { order:0; }
      .tables-col { width:100%; }
      .top-row .col-md-4 { flex: 0 0 100%; max-width:100%; }
      .top-row { margin-top:12px; }
    }