.contact-hero{
  flex:0 0 auto;
  margin-bottom:1.25rem;
  padding-bottom:1.4rem;
}

.offer-card-compact{
  width:min(100%,18rem);
  margin-top:1.25rem;
}

.form-card{
  width:100%;
  max-width:26rem;
  margin:0 auto;
  padding:1.4rem 1.4rem 1.2rem;
  color:var(--cosmos-ink);
  background:
    linear-gradient(180deg,rgba(61,224,255,.08),transparent 18%),
    var(--cosmos-glass);
  border:1px solid var(--cosmos-line);
  box-shadow:
    0 0 0 1px rgba(2,1,10,.5),
    0 24px 60px -24px rgba(0,0,0,.65),
    inset 0 1px 0 rgba(232,244,255,.08);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  text-align:left;
  animation:cosmos-rise .7s cubic-bezier(.22,1,.36,1) .08s both;
}

.stack{display:grid;gap:1rem}
.field{display:grid;gap:.35rem}
.field label{
  font-size:.875rem;
  font-weight:600;
  color:var(--cosmos-ink);
}
.field input,.field textarea{
  width:100%;
  padding:.75rem .9rem;
  font:inherit;
  color:var(--cosmos-ink);
  background:rgba(8,12,32,.55);
  border:1px solid rgba(61,224,255,.24);
  border-radius:0;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.field textarea{min-height:9rem;resize:vertical;line-height:1.7}
.field input:focus-visible,.field textarea:focus-visible{
  outline:2px solid var(--cosmos-cyan);
  outline-offset:1px;
  border-color:transparent;
}

.submit{
  display:grid;
  gap:.1rem;
  width:100%;
  min-height:3rem;
  padding:.75rem 1.375rem;
  border:1px solid #0e7490;
  color:#041018;
  background:
    linear-gradient(180deg,#7aeeff,var(--cosmos-cyan) 48%,var(--cosmos-cyan-deep));
  font-family:var(--cosmos-font-display);
  font-size:.9rem;
  font-weight:600;
  line-height:1.35;
  cursor:pointer;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.45),
    0 0 24px -8px rgba(61,224,255,.8);
  transition:transform .15s ease,filter .15s ease;
}
.submit .en{
  color:inherit;
  opacity:.78;
  font-family:var(--cosmos-font-body);
  font-size:.78em;
  font-weight:500;
}
.submit:hover{
  transform:translateY(-1px);
  filter:brightness(1.06);
}
.submit:active{transform:scale(.98)}

.notice{
  margin:0 0 1rem;
  padding:.8rem 1rem;
  border:1px solid transparent;
  font-size:.9375rem;
}
.notice-success{
  background:var(--cosmos-ok-bg);
  border-color:var(--cosmos-ok);
  color:var(--cosmos-ok);
}
.notice-error{
  background:var(--cosmos-ng-bg);
  border-color:var(--cosmos-ng);
  color:var(--cosmos-ng);
}

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

.back{
  margin:1.15rem 0 0;
  text-align:center;
  font-size:.875rem;
}
.back a{
  color:var(--cosmos-ink-soft);
  text-decoration:none;
}
.back a:hover{color:var(--cosmos-cyan)}
