.contact-grid{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:64px;
}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr;gap:48px;}}

.contact-section-tight{padding-bottom:64px;}
@media (max-width:768px){.contact-section-tight{padding-bottom:48px;}}

.contact-info{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.info-card{
  display:flex;
  align-items:flex-start;
  gap:16px;
  padding:22px 24px;
  border:1px solid var(--grey-900);
  border-radius:12px;
  transition:border-color .3s var(--ease), background .3s var(--ease);
}
.info-card:not(.no-hover):hover{border-color:var(--grey-600);background:var(--grey-900);}
.info-icon{font-size:22px;line-height:1;margin-top:2px;}
.info-icon-img{display:inline-flex;align-items:flex-start;}
.info-icon-img img{display:block;filter:brightness(0) invert(1);opacity:.92;}
.info-card h4{
  font-family:var(--display);
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--grey-400);
  margin-bottom:6px;
}
.info-card p{font-size:16px;line-height:1.5;}

.contact-form{
  display:flex;
  flex-direction:column;
  gap:22px;
}
.contact-form label{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.contact-form label span{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--grey-400);
  font-weight:600;
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  font-family:var(--body);
  font-size:15px;
  color:var(--white);
  background:var(--grey-900);
  border:1px solid var(--grey-600);
  border-radius:8px;
  padding:14px 16px;
  resize:vertical;
}
.contact-form select{
  appearance:none;
  cursor:pointer;
  padding-right:52px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%230a0a0a'/%3E%3Cpath d='M7 10L12 15L17 10Z' fill='%23ffffff'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  background-size:22px 22px;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  outline:none;
  border-color:var(--white);
}
.contact-form button{
  align-self:flex-start;
  margin-top:6px;
}
.form-note{
  font-size:13px;
  color:var(--grey-400);
  min-height:18px;
}

.form-success{
  display:none;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
  padding:48px 40px;
  border:1px solid var(--grey-900);
  border-radius:14px;
  background:var(--grey-900);
}
.form-success.visible{display:flex;}
.form-success-check{
  width:56px;height:56px;
  border-radius:50%;
  border:1px solid var(--grey-600);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--white);
}
.form-success h3{
  font-family:var(--display);
  font-size:clamp(20px,3vw,26px);
  text-transform:uppercase;
  line-height:1.2;
}
.form-success p{
  font-size:15px;
  color:var(--grey-400);
  margin-top:-8px;
}
.form-success .btn{margin-top:8px;}
