/* ============================================================
   DESIGN HUB HOME — Native form styles
   Matches the site design system (Fraunces/Archivo, gold accent).
   ============================================================ */
.dh-form{display:flex;flex-direction:column;gap:14px;}
.dh-form .dh-row{display:flex;gap:12px;}
.dh-form .dh-row .dh-field{flex:1;min-width:0;}
.dh-field{display:flex;flex-direction:column;gap:6px;}
.dh-field label{
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  font-weight:700;color:#6E6E6A;
}
.dh-field .req{color:#B08D57;}
.dh-form input,
.dh-form select,
.dh-form textarea{
  width:100%;font-family:'Archivo',sans-serif;font-size:15px;color:#0A0A0A;
  background:#FFFFFF;border:1.5px solid rgba(10,10,10,.16);border-radius:10px;
  padding:13px 14px;transition:border-color .18s ease,box-shadow .18s ease;
  -webkit-appearance:none;appearance:none;
}
.dh-form textarea{resize:vertical;min-height:96px;line-height:1.5;}
.dh-form select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236E6E6A' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer;
}
.dh-form input:focus,
.dh-form select:focus,
.dh-form textarea:focus{
  outline:none;border-color:#B08D57;box-shadow:0 0 0 3px rgba(176,141,87,.16);
}
.dh-form input::placeholder,
.dh-form textarea::placeholder{color:#A6A6A2;}
/* honeypot — visually hidden, off-screen */
.dh-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0;}
.dh-submit{width:100%;justify-content:center;margin-top:4px;}
.dh-submit[disabled]{opacity:.6;cursor:default;}
.dh-consent{font-size:12px;color:#8A8A86;line-height:1.5;margin-top:2px;}
.dh-status{font-size:14px;line-height:1.5;margin-top:4px;min-height:1px;}
.dh-status.ok{color:#2e7d4f;font-weight:600;}
.dh-status.err{color:#b3261e;font-weight:600;}
.dh-form.is-sent .dh-fields{display:none;}
.dh-success{display:none;text-align:left;padding:8px 0;}
.dh-form.is-sent .dh-success{display:block;}
.dh-success h4{font-family:'Fraunces',serif;font-size:24px;font-weight:500;margin:0 0 8px;color:#0A0A0A;}
.dh-success p{font-size:15px;color:#6E6E6A;margin:0;}

/* CTA form band added to pages that had no form */
.dh-cta{background:#0A0A0A;color:#FFFFFF;padding:84px 0;}
.dh-cta .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
.dh-cta .dh-cta-copy .eyebrow{color:#B08D57;}
.dh-cta .dh-cta-copy h2{color:#FFFFFF;margin:10px 0 16px;}
.dh-cta .dh-cta-copy p{color:rgba(255,255,255,.7);max-width:42ch;font-size:16px;}
.dh-cta .dh-cta-copy .dh-cta-phone{display:inline-block;margin-top:22px;font-family:'Fraunces',serif;font-size:26px;color:#fff;text-decoration:none;}
.dh-cta-card{background:#FFFFFF;border-radius:16px;padding:30px 28px;box-shadow:0 30px 80px rgba(0,0,0,.35);}
.dh-cta-card .dh-eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#B08D57;font-weight:700;margin-bottom:8px;}
.dh-cta-card .dh-heading{font-family:'Fraunces',serif;font-size:25px;font-weight:500;margin:0 0 18px;color:#0A0A0A;}

/* Newsletter strip in the footer */
.dh-news{border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);padding:34px 0;margin-bottom:8px;}
.dh-news .wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;}
.dh-news-copy h4{font-family:'Fraunces',serif;font-weight:500;font-size:24px;color:#fff;margin:0 0 4px;}
.dh-news-copy p{font-size:14px;color:rgba(255,255,255,.62);margin:0;}
.dh-news form{display:flex;gap:10px;flex:1;min-width:280px;max-width:480px;}
.dh-news input{
  flex:1;font-family:'Archivo',sans-serif;font-size:15px;color:#fff;
  background:transparent;border:1.5px solid rgba(255,255,255,.3);border-radius:999px;padding:13px 18px;
}
.dh-news input::placeholder{color:rgba(255,255,255,.5);}
.dh-news input:focus{outline:none;border-color:#B08D57;}
.dh-news button{white-space:nowrap;}
.dh-news .dh-status{flex-basis:100%;text-align:right;}
.dh-news .dh-status.ok{color:#d9b87f;}

@media(max-width:900px){
  .dh-cta{padding:56px 0;}
  .dh-cta .wrap{grid-template-columns:1fr;gap:30px;}
  .dh-form .dh-row{flex-direction:column;gap:14px;}
  .dh-news .wrap{flex-direction:column;align-items:flex-start;}
  .dh-news form{max-width:none;width:100%;}
  .dh-news .dh-status{text-align:left;}
}
