/* ============================================================
   EightySix Digital — /contact/ page
   Shares tokens/header/footer/buttons/reveal from styles.css.
   ============================================================ */
.ct-hero{position:relative;background:var(--ink);min-height:100svh;display:flex;align-items:center;padding:120px 0 80px;overflow:hidden}
.ct-glow{position:absolute;inset:0;z-index:0;background:radial-gradient(46% 56% at 88% 20%,rgba(228,106,44,.2),transparent 62%),radial-gradient(40% 44% at 0% 95%,rgba(228,106,44,.12),transparent 60%)}
.ct-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}

/* ---------- left column ---------- */
.ct-eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:var(--volt);margin-bottom:20px}
.ct-h1{font-family:var(--display);font-weight:700;line-height:1;letter-spacing:-.03em;font-size:clamp(2.4rem,5vw,3.9rem);margin-bottom:20px;color:#fff}
.ct-lead{font-size:clamp(1.02rem,1.4vw,1.18rem);line-height:1.6;color:#cfcfd6;max-width:48ch;margin-bottom:30px}
.ct-details{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.ct-details li{border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03);transition:border-color .2s,background .2s}
.ct-details li:not(.ct-loc):hover{border-color:var(--volt);background:rgba(228,106,44,.06)}
.ct-details a,.ct-loc{display:flex;align-items:center;gap:14px;padding:14px 16px;text-decoration:none}
.ct-ic{flex:none;width:42px;height:42px;border-radius:11px;background:rgba(228,106,44,.14);color:var(--volt);display:grid;place-items:center}
.ct-ic svg{width:21px;height:21px}
.ct-d{display:flex;flex-direction:column;gap:1px;min-width:0}
.ct-d-k{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:#83838c;font-weight:600}
.ct-d strong{font-family:var(--display);font-weight:600;font-size:1.05rem;color:#fff;word-break:break-word}
.ct-promise{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:22px}
.ct-promise li{position:relative;padding-left:28px;color:#c5c5cd;font-size:.97rem}
.ct-promise li::before{content:"";position:absolute;left:0;top:.1em;width:18px;height:18px;border-radius:5px;background:rgba(53,196,106,.16)}
.ct-promise li::after{content:"";position:absolute;left:5px;top:.3em;width:5px;height:9px;border:solid #35c46a;border-width:0 2px 2px 0;transform:rotate(45deg)}
.ct-proof{display:flex;align-items:center;gap:10px;color:#b6b6bf;font-size:.95rem}
.ct-proof .stars{color:var(--volt);letter-spacing:2px}

/* ---------- form ---------- */
.ct-form{background:var(--paper);color:var(--ink);border-radius:20px;padding:clamp(26px,3vw,38px);box-shadow:0 44px 84px -40px rgba(0,0,0,.7)}
.ct-form-title{font-family:var(--display);font-weight:600;font-size:clamp(1.5rem,2.6vw,1.9rem);margin-bottom:20px}
.ct-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.field{margin-bottom:15px}
.field label{display:block;font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;margin-bottom:6px;color:var(--ink)}
.field .opt{color:var(--muted-paper);text-transform:none;letter-spacing:0;font-weight:400}
.field input,.field select,.field textarea{width:100%;background:#fff;border:1.5px solid var(--line-dark);border-radius:10px;padding:11px 13px;font-family:var(--body);font-size:.97rem;color:var(--ink);transition:border-color .2s}
.field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23E46A2C' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px;padding-right:36px;cursor:pointer}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--volt);outline:none}
.field textarea{resize:vertical}
.ct-form .btn{margin-top:6px}
.form-status{margin:13px 0 0;font-size:.95rem;font-weight:500;display:none;text-align:center}
.form-status.show{display:block}
.form-status.ok{color:var(--volt-deep)}
.form-status.err{color:#c0392b}
.ct-fine{margin-top:12px;font-size:.8rem;color:var(--muted-paper);text-align:center}

/* ---------- responsive ---------- */
@media(max-width:900px){
  .ct-hero{min-height:auto;padding-top:104px}
  .ct-grid{grid-template-columns:1fr;gap:40px}
}
@media(max-width:460px){
  .ct-form-grid{grid-template-columns:1fr}
}
