/* ============ SeedAxis — Consultation modal ============ */
/* Self-contained popup form. Builds on styles.css tokens. */

.sa-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;
  padding:24px;visibility:hidden;opacity:0;transition:opacity .28s ease,visibility .28s ease}
.sa-modal.open{visibility:visible;opacity:1}

.sa-modal__overlay{position:absolute;inset:0;background:rgba(5,11,26,.72);backdrop-filter:blur(6px)}

.sa-modal__dialog{position:relative;width:100%;max-width:560px;max-height:calc(100vh - 48px);overflow-y:auto;
  background:linear-gradient(180deg,#16285A 0%,#101F49 100%);
  border:1px solid var(--line-strong);border-radius:var(--r-lg);
  padding:38px 40px;box-shadow:0 40px 100px -30px rgba(0,0,0,.85);
  transform:translateY(16px) scale(.98);opacity:0;transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .3s}
.sa-modal.open .sa-modal__dialog{transform:none;opacity:1}

.sa-modal__close{position:absolute;top:18px;right:18px;width:38px;height:38px;display:inline-flex;
  align-items:center;justify-content:center;border-radius:10px;cursor:pointer;
  background:rgba(255,255,255,.05);border:1px solid var(--line-strong);color:var(--mist);
  transition:background .2s,color .2s,border-color .2s}
.sa-modal__close:hover{background:rgba(255,255,255,.1);color:#fff;border-color:var(--green)}
.sa-modal__close svg{width:18px;height:18px;stroke-width:2}

.sa-modal__head{margin-bottom:24px;padding-right:34px}
.sa-modal__head .eyebrow{margin-bottom:14px}
.sa-modal__head h3{font-family:"Sora",sans-serif;font-size:26px;font-weight:700;letter-spacing:-.01em;line-height:1.12;margin-bottom:10px}
.sa-modal__head p{color:var(--mist);font-size:15px;line-height:1.55;max-width:46ch}

/* form */
.sa-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sa-field{display:flex;flex-direction:column;gap:7px}
.sa-field--full{grid-column:1 / -1}
.sa-field label{font-size:13px;font-weight:600;color:var(--mist)}
.sa-field label .req{color:var(--green-bright)}
.sa-field input,.sa-field textarea{width:100%;background:var(--navy);border:1px solid var(--line-strong);
  border-radius:11px;padding:13px 15px;color:#fff;font-family:"DM Sans",sans-serif;font-size:15px;
  transition:border-color .2s,box-shadow .2s,background .2s}
.sa-field textarea{resize:vertical;min-height:110px;line-height:1.5}
.sa-field input::placeholder,.sa-field textarea::placeholder{color:var(--slate)}
.sa-field input:focus,.sa-field textarea:focus{outline:none;border-color:var(--green);
  background:var(--navy-700);box-shadow:0 0 0 3px rgba(46,170,110,.16)}
.sa-form .btn{grid-column:1 / -1;justify-content:center;width:100%;border:0;cursor:pointer;font-size:16px;margin-top:2px}
.sa-form .btn[disabled]{opacity:.6;cursor:not-allowed}

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

.sa-status{grid-column:1 / -1;border-radius:11px;font-size:14px;font-weight:500;
  max-height:0;opacity:0;overflow:hidden;padding:0 15px;transition:max-height .35s ease,opacity .35s ease,padding .35s ease}
.sa-status.show{max-height:120px;opacity:1;padding:13px 15px}
.sa-status.ok{background:rgba(46,170,110,.12);border:1px solid rgba(46,170,110,.4);color:var(--green-bright)}
.sa-status.err{background:rgba(229,96,96,.1);border:1px solid rgba(229,96,96,.4);color:#f0a3a3}

@media (max-width:520px){
  .sa-modal{padding:14px}
  .sa-modal__dialog{padding:30px 24px}
  .sa-form{grid-template-columns:1fr}
  .sa-modal__head h3{font-size:23px}
}
