
.infoCard.contactMode{
  width:min(900px,94vw);
  padding:clamp(24px,3.2vw,30px);
}
.contactView[hidden]{display:none!important}

.contactTitle{
  margin:0 0 18px;
  font-size:clamp(36px,6vw,68px);
  line-height:.97;
  letter-spacing:-.05em;
  font-weight:820;
}
.privateNotice{
  display:flex;
  gap:11px;
  align-items:flex-start;
  margin-bottom:18px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:19px;
  background:rgba(255,255,255,.035);
}
.privateDot{
  flex:0 0 auto;
  width:7px;
  height:7px;
  margin-top:5px;
  border-radius:50%;
  background:#72cfff;
  box-shadow:0 0 13px rgba(114,207,255,.72);
}
.privateNotice strong{
  display:block;
  margin:0 0 5px;
  color:rgba(255,255,255,.94);
  font-size:12px;
  line-height:1.2;
  font-weight:760;
}
.privateNotice p{
  margin:0;
  max-width:720px;
  color:rgba(255,255,255,.61);
  font-size:11px;
  line-height:1.55;
}
.contactForm{
  display:grid;
  gap:12px;
  position:relative;
}

.contactHoneypot{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  pointer-events:none!important;
  opacity:0!important;
}
.contactVerification{
  width:100%;
  min-height:0;
}
.contactVerification[hidden]{display:none!important}
.contactField{
  width:100%;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.035);
  color:#fff;
  outline:none;
  border-radius:20px;
  font:inherit;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.contactField:focus{
  border-color:rgba(114,207,255,.48);
  box-shadow:0 0 0 3px rgba(114,207,255,.08);
  background:rgba(255,255,255,.045);
}
.contactField::placeholder{color:rgba(255,255,255,.36)}
textarea.contactField{
  min-height:154px;
  max-height:320px;
  resize:vertical;
  padding:16px 17px;
  line-height:1.55;
}
input.contactField{
  min-height:52px;
  padding:0 16px;
}
.contactActions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.contactHelper{
  min-width:0;
  flex:1 1 320px;
  color:rgba(255,255,255,.48);
  font-size:10.5px;
  line-height:1.45;
}
.contactSend{
  flex:0 0 auto;
  min-width:112px;
  min-height:44px;
  padding:0 17px;
  border:1px solid rgba(114,207,255,.30);
  border-radius:999px;
  background:rgba(114,207,255,.075);
  color:#fff;
  font-size:12px;
  font-weight:730;
  cursor:pointer;
  transition:.18s ease;
}
.contactSend:hover{background:rgba(114,207,255,.13)}
.contactSend:disabled{opacity:.5;cursor:default}
.contactStatus{
  min-height:17px;
  margin-top:1px;
  color:rgba(255,255,255,.62);
  font-size:11px;
  line-height:1.45;
}
.contactStatus.error{color:#ffaaa3}
.contactStatus.success{color:#a8e4c4}

html.theme-light body .privateNotice{
  border-color:rgba(24,38,29,.10);
  background:rgba(20,32,25,.025);
}
html.theme-light body .privateNotice strong{color:#17201b}
html.theme-light body .privateNotice p{color:rgba(24,32,27,.59)}
html.theme-light body .contactField{
  border-color:rgba(24,38,29,.10);
  background:rgba(20,32,25,.025);
  color:#17201b;
}
html.theme-light body .contactField:focus{
  border-color:rgba(52,151,210,.36);
  box-shadow:0 0 0 3px rgba(52,151,210,.07);
  background:rgba(20,32,25,.035);
}
html.theme-light body .contactField::placeholder{color:rgba(24,32,27,.37)}
html.theme-light body .contactHelper{color:rgba(24,32,27,.51)}
html.theme-light body .contactSend{
  border-color:rgba(52,151,210,.24);
  background:rgba(52,151,210,.07);
  color:#17201b;
}
html.theme-light body .contactSend:hover{background:rgba(52,151,210,.12)}
html.theme-light body .contactStatus{color:rgba(24,32,27,.62)}
html.theme-light body .contactStatus.error{color:#a43b35}
html.theme-light body .contactStatus.success{color:#236c49}

@media(max-width:640px){
  .contactActions{align-items:stretch}
  .contactSend{width:100%}
  .contactHelper{flex-basis:100%}
}
