/* ==========================================
   AJUSTES BRIEFING.HTML NOVO
========================================== */

.briefing-container,
.container{
  width:90%;
  max-width:1100px;
  margin:auto;
  padding:50px 0;
}

.briefing-top,
.topo{
  margin-bottom:40px;
}

.briefing-logo,
.logo{
  display:flex;
  align-items:center;
  gap:15px;
  margin-bottom:20px;
}

.briefing-logo img,
.logo img{
  width:70px;
  height:70px;
  object-fit:contain;
}

.briefing-logo h1,
.logo h1{
  font-size:2rem;
}

.briefing-logo span,
.logo span{
  color:#8b5cf6;
}

.briefing-description,
.topo p{
  color:#aaa;
  line-height:1.7;
  max-width:700px;
}

.briefing-form,
.briefing-box{
  background:#11111b;
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:35px;
  box-shadow:0 25px 80px rgba(0,0,0,.35);
}

.briefing-section{
  margin-bottom:40px;
}

.briefing-section h2,
.section-title{
  font-size:1.4rem;
  margin-bottom:25px;
  color:#fff;
}

.briefing-grid,
.grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:20px;
  margin-bottom:30px;
}

.full-width,
.full{
  grid-column:1/-1;
}

.checks-grid,
.checks{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:15px;
  margin-top:15px;
}

.check-card,
.check-item{
  background:#181824;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:15px;
  display:flex;
  align-items:center;
  gap:12px;
  cursor:pointer;
  transition:.3s;
}

.check-card:hover,
.check-item:hover{
  border-color:rgba(139,92,246,.55);
  transform:translateY(-2px);
}

.check-card input,
.check-item input{
  width:18px;
  height:18px;
  accent-color:#8b5cf6;
}

.voucher-code{
  display:none;
  margin-top:20px;
}

.voucher-alert{
  display:none;
  margin-top:20px;
  background:rgba(139,92,246,.12);
  border:1px solid rgba(139,92,246,.35);
  border-radius:16px;
  padding:18px;
  color:#ddd;
  line-height:1.6;
}

.voucher-alert.active{
  display:block;
}

.upload-box,
.upload{
  border:2px dashed rgba(139,92,246,.35);
  border-radius:20px;
  padding:35px;
  text-align:center;
  background:#131320;
  margin-top:20px;
}

.upload-box p,
.upload p{
  color:#aaa;
  margin-bottom:15px;
}

.upload-box input,
.upload input{
  color:#fff;
}

.submit-info,
.info{
  color:#888;
  max-width:600px;
  line-height:1.6;
  font-size:.95rem;
}

.btn-primary,
.btn{
  background:linear-gradient(135deg,#8b5cf6,#5b21b6);
  color:#fff;
  border:none;
  padding:16px 28px;
  border-radius:16px;
  cursor:pointer;
  font-weight:700;
  font-size:1rem;
  transition:.3s;
}

.btn-primary:hover,
.btn:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 35px rgba(139,92,246,.35);
}

.btn-secondary{
  background:#1f1f2e;
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  padding:16px 28px;
  border-radius:16px;
  cursor:pointer;
  font-weight:700;
}

.modal-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.voucher-modal-content p{
  color:#aaa;
  margin-bottom:20px;
  line-height:1.6;
}

@media(max-width:768px){
  .briefing-form,
  .briefing-box{
    padding:25px;
  }

  .briefing-logo h1,
  .logo h1{
    font-size:1.6rem;
  }

  .submit-area{
    flex-direction:column;
    align-items:flex-start;
  }

  .btn-primary,
  .btn,
  .btn-secondary{
    width:100%;
  }

  .modal-actions{
    flex-direction:column;
  }
}

/* ==========================================
   INPUTS BRIEFING MODERNO
========================================== */

.input-group{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.input-group label{
    color:#f1f1f1;
    font-size:.95rem;
    font-weight:600;
}

.input-group input,
.input-group textarea,
.input-group select{
    width:100%;
    background:#0b0b14;

    border:1px solid rgba(139,92,246,.18);

    border-radius:18px;

    padding:16px 18px;

    color:#fff;

    font-size:1rem;

    outline:none;

    transition:.3s ease;
}

/* ALTURA INPUTS */

.input-group input,
.input-group select{
    height:58px;
}

/* TEXTAREA */

.input-group textarea{
    min-height:160px;
    resize:vertical;
    padding-top:18px;
}

/* PLACEHOLDER */

.input-group input::placeholder,
.input-group textarea::placeholder{
    color:#7e7a92;
}

/* SELECT */

.input-group select{
    appearance:none;
    cursor:pointer;
}

/* FOCUS */

.input-group input:focus,
.input-group textarea:focus,
.input-group select:focus{

    border-color:#8b5cf6;

    box-shadow:
        0 0 0 4px rgba(139,92,246,.12),
        0 0 30px rgba(139,92,246,.22);

}

/* FILE INPUT */

.upload-box input[type="file"]{
    background:#131320;
    border:none;
    padding:10px;
    border-radius:12px;
}

/* CHECKBOX */

.check-card{
    background:#11111c;
    border:1px solid rgba(255,255,255,.06);
}

.check-card:hover{
    border-color:#8b5cf6;
    box-shadow:0 0 25px rgba(139,92,246,.15);
}

