/* KeepChatSafe — briefing request form.
   Loaded only by book-a-briefing.html; the other pages don't need it. */
/* ---------- Briefing request form ---------- */
.form-wrap{display:grid;grid-template-columns:1.25fr .85fr;gap:56px;align-items:start}
@media(max-width:900px){.form-wrap{grid-template-columns:1fr;gap:38px}}

.form-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:38px 36px;box-shadow:0 3px 20px rgba(18,38,58,.05)}
@media(max-width:600px){.form-card{padding:26px 20px}}

.field{margin-bottom:20px}
.field label{display:block;font-size:.88rem;font-weight:600;color:var(--navy);margin-bottom:7px;letter-spacing:.005em}
.field .req{color:#0d9488;margin-left:2px}
.field .hint{display:block;font-weight:400;font-size:.8rem;color:var(--slate-soft);margin-top:3px}
.field input,.field select,.field textarea{
  width:100%;font:inherit;font-size:.95rem;color:var(--navy);background:#fcfdfe;
  border:1px solid #d3dee6;border-radius:9px;padding:12px 14px;transition:border-color .15s,box-shadow .15s;
}
.field textarea{min-height:132px;resize:vertical;line-height:1.55}
.field select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' stroke='%235b7185' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:12px;padding-right:38px;cursor:pointer}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.14);background:#fff}
.field input::placeholder,.field textarea::placeholder{color:#9bafbe}

.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:#c0392b;background:#fffafa}
.field-error{display:none;font-size:.82rem;color:#c0392b;margin-top:6px;font-weight:500}
.field.invalid .field-error{display:block}

.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:600px){.field-row{grid-template-columns:1fr;gap:0}}

.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.form-actions{margin-top:28px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.form-actions .btn[disabled]{opacity:.55;cursor:not-allowed}
.form-note{font-size:.82rem;color:var(--slate-soft);line-height:1.5;margin-top:18px}
.form-note a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:2px}

.form-status{display:none;border-radius:11px;padding:18px 20px;margin-bottom:26px;font-size:.93rem;line-height:1.6}
.form-status.show{display:block}
.form-status.error{background:#fdf2f0;border:1px solid #f0c8c1;color:#8e2d20}
.form-status.error b{display:block;margin-bottom:3px;color:#7a2418}

.form-success{display:none;text-align:center;padding:34px 20px}
.form-success.show{display:block}
.form-success .tick{width:62px;height:62px;border-radius:50%;background:#e6f7f4;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:1.9rem}
.form-success h3{font-family:'Fraunces',Georgia,serif;font-size:1.6rem;color:var(--navy);margin-bottom:12px;font-weight:600}
.form-success p{color:var(--slate-soft);max-width:430px;margin:0 auto 10px;line-height:1.65}

.form-aside .aside-box{background:var(--sand);border:1px solid var(--line);border-radius:14px;padding:26px 24px;margin-bottom:20px}
.form-aside .aside-box h4{font-size:1rem;color:var(--navy);margin-bottom:12px;font-weight:700}
.form-aside .aside-box ul{list-style:none}
.form-aside .aside-box li{position:relative;padding-left:24px;margin-bottom:11px;font-size:.9rem;color:var(--slate-soft);line-height:1.55}
.form-aside .aside-box li:last-child{margin-bottom:0}
.form-aside .aside-box li .check{position:absolute;left:0;top:0;color:var(--teal-dark);font-weight:700}
.form-aside .aside-box p{font-size:.9rem;color:var(--slate-soft);line-height:1.6}
.form-aside .aside-box a{color:var(--teal-dark);font-weight:600}
