/* ═══ CONTACT · SECTION 2 — BRIEF FORM + DETAILS ═══ */
.main{position:relative;padding:clamp(60px,10vh,120px) var(--gut) clamp(74px,12vh,150px);
  border-top:1px solid var(--border)}
.main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);
  gap:clamp(34px,6vw,96px);align-items:start}
@media(max-width:960px){.main-grid{grid-template-columns:1fr;gap:48px}}

/* ── form ── */
.form-head{padding-bottom:clamp(24px,4vh,38px)}
.form-head h2{margin-top:18px;font-size:clamp(1.4rem,3.2vw,2.4rem);line-height:1.02}
.form-head p{margin-top:14px;font-size:.96rem;line-height:1.6;color:var(--muted);max-width:46ch}

.field{position:relative;margin-bottom:clamp(18px,2.6vh,26px);
  opacity:0;transform:translateY(16px);
  transition:opacity .7s ease,transform .75s cubic-bezier(.16,1,.3,1)}
.main.is-in .field{opacity:1;transform:none}
.main.is-in .field:nth-child(2){transition-delay:.06s}
.main.is-in .field:nth-child(3){transition-delay:.12s}
.main.is-in .field:nth-child(4){transition-delay:.18s}
.main.is-in .field:nth-child(5){transition-delay:.24s}
.main.is-in .field:nth-child(6){transition-delay:.3s}

.field label{display:block;font-size:10.5px;letter-spacing:.16em;font-weight:600;
  color:var(--dim);margin-bottom:11px;transition:color .3s ease}
.field:focus-within label{color:var(--cut)}
.field input,.field textarea,.field select{
  width:100%;background:var(--surface);border:1px solid var(--border);color:var(--text);
  font-family:inherit;font-size:1rem;padding:16px 18px;
  transition:border-color .3s ease,background .3s ease}
.field textarea{min-height:150px;resize:vertical;line-height:1.6}
.field input::placeholder,.field textarea::placeholder{color:var(--dim)}
.field input:focus,.field textarea:focus,.field select:focus{
  outline:none;border-color:var(--cut);background:var(--surface-alt)}
.field select{appearance:none;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),
                   linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;
  background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.field .hint{margin-top:9px;font-size:11px;color:var(--dim);line-height:1.5}
/* a field flagged by validation */
.field.bad input,.field.bad textarea{border-color:#FF6B4A}
.field .err{display:none;margin-top:9px;font-size:11px;letter-spacing:.06em;color:#FF6B4A}
.field.bad .err{display:block}

.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,22px)}
@media(max-width:560px){.two{grid-template-columns:1fr}}

/* service chips */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;overflow:hidden;cursor:pointer;
  border:1px solid var(--border);background:none;color:var(--muted);font-family:inherit;
  font-size:11px;letter-spacing:.1em;font-weight:600;padding:11px 15px;
  transition:color .3s ease,border-color .3s ease}
.chip::before{content:"";position:absolute;inset:-1px;background:var(--cut);
  transform:translateX(-101%) skewX(-12deg);
  transition:transform .42s cubic-bezier(.2,.7,.2,1);z-index:0}
.chip:hover::before{transform:translateX(0) skewX(-12deg)}
.chip span{position:relative;z-index:1}
.chip:hover{color:#0A0A0A}
.chip.on{background:var(--cut);border-color:var(--cut);color:#0A0A0A}
.chip.on::before{display:none}

.submit{margin-top:clamp(10px,2vh,18px);display:flex;flex-wrap:wrap;align-items:center;
  gap:clamp(14px,2.6vw,30px)}
.submit .btn{font-size:12.5px;padding:18px 34px}
.submit .note{font-size:11.5px;color:var(--dim);line-height:1.5;max-width:26ch}

.formflag{display:inline-flex;align-items:center;gap:9px;margin-bottom:22px;
  font-size:10px;letter-spacing:.16em;font-weight:700;color:#0A0A0A;background:var(--cut);
  padding:7px 11px}

/* ── details column ── */
.details{position:sticky;top:calc(var(--nav-h) + 40px)}
@media(max-width:960px){.details{position:static}}
.dblock{padding:clamp(20px,2.8vh,28px) 0;border-bottom:1px solid var(--border);
  opacity:0;transform:translateY(16px);
  transition:opacity .7s ease,transform .75s cubic-bezier(.16,1,.3,1)}
.main.is-in .dblock{opacity:1;transform:none}
.main.is-in .dblock:nth-child(2){transition-delay:.08s}
.main.is-in .dblock:nth-child(3){transition-delay:.16s}
.main.is-in .dblock:nth-child(4){transition-delay:.24s}
.dblock:first-child{border-top:1px solid var(--border)}
.dblock .k{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.18em;
  font-weight:600;color:var(--dim);margin-bottom:13px}
.dblock .k::before{content:"";width:6px;height:6px;background:var(--cut);flex-shrink:0}
.dblock a,.dblock .v{font-family:'Archivo Expanded',Archivo,sans-serif;font-weight:800;
  font-size:clamp(1rem,1.7vw,1.32rem);letter-spacing:-.024em;line-height:1.25;
  position:relative;display:inline-block}
.dblock a::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;
  background:var(--cut);transition:right .4s cubic-bezier(.2,.7,.2,1)}
.dblock a:hover::after{right:0}
.dblock .sm{margin-top:10px;font-size:12px;line-height:1.6;color:var(--muted)}
.dblock .todo{display:inline-block;margin-top:10px;font-size:9.5px;letter-spacing:.14em;
  font-weight:700;color:#0A0A0A;background:var(--cut);padding:4px 7px}
.socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.socials a{font-family:inherit;font-weight:600;font-size:11px;letter-spacing:.1em;
  border:1px solid var(--border);padding:10px 14px;color:var(--muted);
  transition:color .3s ease,border-color .3s ease}
.socials a::after{display:none}
.socials a:hover{color:var(--text);border-color:var(--muted)}

@media(prefers-reduced-motion:reduce){ .field,.dblock{opacity:1;transform:none} }
