/* =========================================================
   ATLANTIC GENETICS — Pedido de Informações
   Integração visual com o site principal
   ========================================================= */

.inquiry-page{
  background:var(--warm);
}

.inquiry-main{
  min-height:75vh;
  overflow:hidden;
}

/* HERO */
.inquiry-hero{
  position:relative;
  padding:170px 0 72px;
  background:linear-gradient(135deg,#f8f5f1 0%,#fff 56%,#f5e7e6 100%);
  border-bottom:1px solid var(--line);
  overflow:hidden;
}

.inquiry-hero::after{
  content:"";
  position:absolute;
  width:430px;
  height:430px;
  right:-170px;
  top:-150px;
  border:1px solid rgba(156,23,21,.11);
  border-radius:50%;
  pointer-events:none;
}

.inquiry-hero::before{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:11%;
  bottom:-105px;
  border:1px solid rgba(156,23,21,.08);
  border-radius:50%;
  pointer-events:none;
}

.inquiry-hero .container{
  position:relative;
  z-index:1;
}

.inquiry-back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:34px;
  color:#6b6763;
  font-size:.85rem;
  font-weight:800;
  transition:.2s ease;
}

.inquiry-back:hover{
  color:var(--red);
  transform:translateX(-3px);
}

.inquiry-hero .eyebrow{
  margin-bottom:16px;
}

.inquiry-hero h1{
  color:var(--ink);
  font-size:clamp(3rem,6vw,5.4rem);
  max-width:820px;
}

.inquiry-hero p{
  max-width:720px;
  margin-top:24px;
  color:var(--muted);
  font-size:1.06rem;
  line-height:1.75;
}

/* CONTEÚDO */
.inquiry-content{
  padding:72px 0 110px;
}

.inquiry-layout{
  display:grid;
  grid-template-columns:minmax(260px,340px) minmax(0,1fr);
  gap:28px;
  align-items:start;
}

/* Resumo do embrião */
.inquiry-selection{
  position:sticky;
  top:104px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:0 18px 44px rgba(20,20,20,.06);
  overflow:hidden;
  padding:0;
}

.inquiry-selection::before{
  content:"";
  display:block;
  height:7px;
  background:var(--red);
}

.inquiry-selection-label{
  display:block;
  padding:27px 28px 0;
  margin-bottom:10px;
  color:var(--red);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.68rem;
  font-weight:900;
}

.inquiry-selection-code{
  display:block;
  padding:0 28px 25px;
  color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.7rem;
  line-height:1.1;
}

.inquiry-selection p{
  padding:0 28px 28px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.65;
}

.inquiry-selection dl{
  margin:0;
  border-top:1px solid var(--line);
}

.inquiry-selection dl>div{
  padding:17px 28px;
  border-bottom:1px solid var(--line);
  background:#fff;
}

.inquiry-selection dl>div:last-child{
  border-bottom:0;
}

.inquiry-selection dt{
  margin-bottom:5px;
  color:#918b86;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:.61rem;
  font-weight:900;
}

.inquiry-selection dd{
  margin:0;
  color:#2a2928;
  font-size:.9rem;
  font-weight:800;
  line-height:1.4;
}

/* Cartão do formulário */
.inquiry-form-card{
  position:relative;
  padding:42px 44px 46px;
  border:1px solid var(--line);
  border-radius:28px;
  background:#fff;
  box-shadow:0 24px 60px rgba(20,20,20,.08);
}

.inquiry-form-card::before{
  content:"";
  position:absolute;
  width:115px;
  height:115px;
  right:-45px;
  top:-45px;
  border:1px solid rgba(156,23,21,.08);
  border-radius:50%;
  pointer-events:none;
}

.form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px 20px;
}

.form-field{
  min-width:0;
}

.form-field-full{
  grid-column:1/-1;
}

.form-field label{
  display:block;
  margin-bottom:8px;
  color:#343230;
  font-size:.78rem;
  font-weight:850;
}

.form-field input,
.form-field textarea,
.form-field select{
  display:block;
  width:100%;
  min-height:54px;
  margin:0;
  padding:14px 16px;
  border:1px solid #ddd9d4;
  border-radius:13px;
  outline:0;
  background:#fbfaf8;
  color:var(--ink);
  font:inherit;
  font-size:.94rem;
  line-height:1.45;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
  appearance:none;
}

.form-field textarea{
  min-height:175px;
  resize:vertical;
}

.form-field input::placeholder,
.form-field textarea::placeholder{
  color:#aaa39d;
  opacity:1;
}

.form-field input:hover,
.form-field textarea:hover,
.form-field select:hover{
  border-color:#ccc5be;
  background:#fff;
}

.form-field input:focus,
.form-field textarea:focus,
.form-field select:focus{
  border-color:rgba(156,23,21,.72);
  background:#fff;
  box-shadow:0 0 0 4px rgba(156,23,21,.08);
}

.consent-row{
  display:flex;
  align-items:flex-start;
  gap:11px;
  margin-top:25px;
  padding:18px 20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--warm);
  color:#6d6863;
  font-size:.79rem;
  line-height:1.55;
  cursor:pointer;
}

.consent-row input{
  flex:0 0 auto;
  width:17px;
  height:17px;
  margin:2px 0 0;
  accent-color:var(--red);
}

.consent-row a{
  color:var(--red);
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:2px;
}

.inquiry-submit-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:26px;
  padding-top:26px;
  border-top:1px solid var(--line);
}

.inquiry-submit-row>span{
  color:#96908a;
  font-size:.72rem;
}

.inquiry-submit-row .btn{
  min-width:180px;
}

/* Erros */
.inquiry-errors{
  margin-bottom:26px;
  padding:17px 20px;
  border:1px solid #e8c8c5;
  border-radius:14px;
  background:#fff4f3;
  color:#7c1714;
}

.inquiry-errors p{
  margin:0 0 5px;
  color:inherit;
  font-size:.88rem;
  font-weight:700;
}

.inquiry-errors p:last-child{
  margin-bottom:0;
}

/* Sucesso */
.inquiry-success{
  padding:42px 20px 35px;
  text-align:center;
}

.inquiry-success-mark{
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  margin:0 auto 24px;
  border-radius:50%;
  background:var(--red-soft);
  color:var(--red);
  font-size:1.65rem;
  font-weight:900;
}

.inquiry-success h2{
  margin:0 auto 14px;
  color:var(--ink);
  font-size:clamp(2rem,4vw,3.1rem);
}

.inquiry-success p{
  max-width:570px;
  margin:0 auto;
  color:var(--muted);
  line-height:1.7;
}

.inquiry-success-actions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}

.inquiry-btn-secondary{
  border-color:var(--line);
  background:#fff;
  color:var(--ink);
  box-shadow:none;
}

.inquiry-btn-secondary:hover{
  border-color:#cfc9c2;
  background:var(--warm);
  transform:translateY(-2px);
}

.inquiry-honeypot{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

/* Tablet */
@media (max-width:980px){
  .inquiry-hero{
    padding:145px 0 62px;
  }

  .inquiry-layout{
    grid-template-columns:1fr;
  }

  .inquiry-selection{
    position:static;
  }

  .inquiry-selection dl{
    display:grid;
    grid-template-columns:repeat(3,1fr);
  }

  .inquiry-selection dl>div{
    border-bottom:0;
    border-right:1px solid var(--line);
  }

  .inquiry-selection dl>div:last-child{
    border-right:0;
  }
}

/* Mobile */
@media (max-width:700px){
  .inquiry-hero{
    padding:128px 0 50px;
  }

  .inquiry-hero h1{
    font-size:clamp(2.65rem,13vw,4rem);
  }

  .inquiry-hero p{
    font-size:.96rem;
  }

  .inquiry-content{
    padding:38px 0 70px;
  }

  .inquiry-layout{
    gap:18px;
  }

  .inquiry-form-card{
    padding:27px 20px 28px;
    border-radius:20px;
  }

  .form-grid{
    grid-template-columns:1fr;
    gap:18px;
  }

  .form-field-full{
    grid-column:auto;
  }

  .inquiry-selection-label{
    padding:23px 22px 0;
  }

  .inquiry-selection-code{
    padding:0 22px 22px;
  }

  .inquiry-selection p{
    padding:0 22px 24px;
  }

  .inquiry-selection dl{
    display:block;
  }

  .inquiry-selection dl>div{
    padding:15px 22px;
    border-right:0;
    border-bottom:1px solid var(--line);
  }

  .inquiry-selection dl>div:last-child{
    border-bottom:0;
  }

  .consent-row{
    padding:15px;
  }

  .inquiry-submit-row{
    align-items:stretch;
    flex-direction:column;
  }

  .inquiry-submit-row .btn{
    width:100%;
  }

  .inquiry-success-actions{
    flex-direction:column;
  }

  .inquiry-success-actions .btn{
    width:100%;
  }
}
