/*
  Contato (Vagas no Sertao)
  Matches the provided contato.html BODY while keeping theme header/footer.
  Scoped to .tjp-contact-shell.
*/

.tjp-contact-shell{
  background:#1c1c1c;
  color:#fff;
  min-height:calc(100vh - 140px);
  /* Theme header is fixed; leave room */
  padding:110px 20px 80px;
}

@media (max-width: 640px){
  .tjp-contact-shell{padding:92px 16px 70px;}
}

.tjp-contact-wrap{
  max-width:1000px;
  margin:0 auto;
  width:100%;
}

.tjp-contact-title{ text-align:center; margin-bottom:10px; }
.tjp-contact-title h1{ font-size:32px; color:#ff8c00; font-weight:800; }
.tjp-contact-subtitle{ text-align:center; color:#888; margin-bottom:40px; }

.tjp-form-section{
  background:#222;
  border:1px solid #ff8c00;
  border-radius:12px;
  padding:32px;
  margin-bottom:30px;
}

.tjp-form-row{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
}
@media (min-width: 860px){
  .tjp-form-row{ grid-template-columns:1fr 1fr; }
}

.tjp-form-group{ margin-bottom:20px; }
.tjp-form-group label{
  display:block;
  margin-bottom:8px;
  color:#ccc;
  font-size:14px;
  font-weight:600;
}

.tjp-form-group input,
.tjp-form-group select,
.tjp-form-group textarea{
  width:100%;
  padding:14px 16px;
  background:#1a1a1a;
  border:1px solid #444;
  border-radius:8px;
  color:#fff;
  font-size:14px;
  outline:none;
  transition:border .2s, box-shadow .2s;
}

.tjp-form-group input:focus,
.tjp-form-group select:focus,
.tjp-form-group textarea:focus{
  border-color:#ff8c00;
  box-shadow:0 0 0 3px rgba(255,140,0,.15);
}

.tjp-form-group textarea{ min-height:120px; resize:vertical; }

.tjp-btn-submit{
  background:#ff8c00;
  color:#000;
  padding:14px 22px;
  border:none;
  border-radius:8px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  width:100%;
  transition:filter .2s;
  height:44px;
  line-height:1;
}

.tjp-btn-submit:hover{ filter:brightness(1.05); }

.tjp-alert{
  border-radius:10px;
  padding:14px 16px;
  margin:0 auto 18px;
  max-width:1000px;
  border:1px solid #333;
  background:#161616;
  color:#E5E5E5;
}
.tjp-alert--success{ border-color:#2d5a27; background:#132013; color:#90EE90; }
.tjp-alert--error{ border-color:#5a2727; background:#201313; color:#ffb3b3; }

.tjp-privacy-notice{
  background:#1a1a1a;
  border-left:4px solid #ff8c00;
  padding:16px 20px;
  margin:20px 0 0;
  font-size:13px;
  color:#aaa;
  border-radius:8px;
}
.tjp-privacy-notice a{ color:#ff8c00; text-decoration:underline; }

.tjp-contact-cards{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  margin:0 0 30px;
}
@media (min-width: 860px){
  .tjp-contact-cards{ grid-template-columns:1fr 1fr; }
}

.tjp-contact-card{
  background:#222;
  border:1px solid #333;
  border-radius:10px;
  padding:24px;
  text-align:center;
}

.tjp-contact-card .icon{ font-size:28px; margin-bottom:10px; }
.tjp-contact-card h3{ color:#ff8c00; font-size:14px; margin-bottom:8px; font-weight:800; }
.tjp-contact-card p{ color:#ccc; font-size:14px; word-break:break-word; }

.tjp-empresas-box{
  background:#222;
  border:2px solid #ff8c00;
  border-radius:12px;
  padding:32px;
  text-align:center;
  margin-bottom:30px;
}

.tjp-empresas-box h3{ color:#ff8c00; font-size:20px; margin-bottom:12px; font-weight:900; }
.tjp-empresas-box p{ color:#ccc; margin-bottom:20px; }

.tjp-btn-empresa{
  display:inline-block;
  background:#ff8c00;
  color:#000;
  padding:12px 22px;
  border-radius:8px;
  text-decoration:none;
  font-weight:900;
}

.tjp-security-notice{
  text-align:center;
  padding:20px;
  color:#666;
  font-size:13px;
}

/* Make sure WP theme defaults won't break spacing on this page */
.tjp-contact-shell input,
.tjp-contact-shell select,
.tjp-contact-shell textarea{
  max-width:100%;
}

/* Maria Bonita assistant (Contato) */
.tjp-assistant-launcher{position:fixed;right:18px;bottom:18px;z-index:9999;}
.tjp-assistant-fab{
  width:78px;height:78px;border-radius:999px;
  border:4px solid #FF7A1A;
  background:#FF7A1A;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  display:flex;align-items:center;justify-content:center;
  padding:3px;cursor:pointer;
  overflow:hidden;
}
.tjp-assistant-fab img{
  width:100%;height:100%;
  border-radius:999px;
  object-fit:cover;
  display:block;
}
@keyframes tjpFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.tjp-assistant-fab{animation:tjpFloat 2.4s ease-in-out infinite;}

.tjp-assistant-panel{position:fixed;right:18px;bottom:110px;width:min(360px,calc(100vw - 36px));background:#1c1c1c;border-radius:18px;overflow:hidden;box-shadow:0 14px 45px rgba(0,0,0,.35);border:2px solid rgba(255,122,26,.55);display:none;}
.tjp-assistant-panel.is-open{display:block;animation:tjpPop .18s ease-out;}
@keyframes tjpPop{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}

.tjp-assistant-head{display:flex;align-items:center;justify-content:space-between;background:#FF7A1A;color:#fff;padding:10px 12px;font-weight:900;}
.tjp-assistant-close{background:transparent;border:0;color:#fff;font-size:18px;cursor:pointer;line-height:1;}
.tjp-assistant-body{padding:12px;background:#1c1c1c;max-height:240px;overflow:auto;}
.tjp-assistant-bubble{background:#FF7A1A;color:#fff;border-radius:14px;padding:12px;max-width:90%;}
.tjp-assistant-row{display:flex;align-items:flex-start;gap:10px;margin-top:10px;}
.tjp-assistant-row--me{justify-content:flex-end;}
.tjp-assistant-bubble--me{background:#111;color:#fff;}

.tjp-assistant-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.tjp-assistant-choice{border:1px solid rgba(255,122,26,.65);background:#111;color:#fff;border-radius:999px;padding:8px 12px;font-weight:900;font-size:13px;cursor:pointer;}
.tjp-assistant-choice:hover{background:#161616;}
.tjp-assistant-choice:disabled{opacity:.55;cursor:not-allowed;}

@media (max-width: 520px){
  .tjp-assistant-panel{right:12px;bottom:100px;width:calc(100vw - 24px);}
  .tjp-assistant-launcher{right:12px;bottom:12px;}
}
.tjp-assistant-footer{display:flex;gap:10px;padding:12px;background:#1c1c1c;border-top:1px solid rgba(255,255,255,.08);}
.tjp-assistant-input{flex:1;border:1px solid #333;background:#111;color:#fff;border-radius:999px;padding:10px 12px;outline:none;}
.tjp-assistant-input::placeholder{color:rgba(255,255,255,.55);}
.tjp-assistant-send{background:#FF7A1A;border:0;color:#fff;border-radius:999px;padding:10px 16px;font-weight:900;cursor:pointer;}
