/* ==========================================================================
   Contact page — small additions only.
   Every rule is namespaced under .ct so it cannot affect the rest of the site,
   and nothing in style.css or Bootstrap is overridden.
   ========================================================================== */

.contact-us .ct-lede{
  max-width:38em;
  margin:14px auto 0;
  color:#6B7568;
  font-size:16px;
  line-height:1.6;
}

.contact-us .contact-short-info a{
  color:#1D3C2A;
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid rgba(187,140,60,.5);
}
.contact-us .contact-short-info a:hover{color:#BB8C3C;border-bottom-color:#BB8C3C}
.contact-us .contact-short-info small{color:#8A8F82;font-size:13px}

.ct-note{
  background:#F6F1E6;
  border-left:3px solid #BB8C3C;
  border-radius:0 10px 10px 0;
  padding:16px 18px;
  margin:26px 0 0;
}
.ct-note b{display:block;color:#1D3C2A;margin-bottom:6px;font-size:15.5px}
.ct-note p{margin:0;font-size:14.5px;line-height:1.6;color:#5C6557}

.ct-hours{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:18px 0 26px;
}
.ct-hours span{
  flex:1 1 160px;
  border:1px solid #DFD8C7;
  border-radius:10px;
  padding:11px 14px;
  font-size:14px;
  color:#5C6557;
}
.ct-hours b{
  display:block;
  font-size:11.5px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#BB8C3C;
  margin-bottom:4px;
}

.ct-privacy{
  margin-top:18px;
  font-size:13px;
  color:#8A8F82;
  line-height:1.55;
}
.ct-privacy a{color:#1D3C2A;text-decoration:underline;text-underline-offset:2px}

/* ---------- what happens next ---------- */
.ct-steps{
  display:grid;
  gap:14px;
  grid-template-columns:1fr;
  margin:52px 0 8px;
  padding-top:36px;
  border-top:1px solid #E2DBCB;
}
@media(min-width:576px){.ct-steps{grid-template-columns:1fr 1fr}}
@media(min-width:992px){.ct-steps{grid-template-columns:repeat(4,1fr)}}

.ct-step{
  position:relative;
  padding:20px 18px 18px;
  border:1px solid #E2DBCB;
  border-radius:12px;
  background:#FBF8F1;
}
.ct-step .ct-n{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;height:30px;
  border-radius:50%;
  background:#1D3C2A;
  color:#F1E7D2;
  font-weight:700;
  font-size:14px;
  margin-bottom:10px;
}
.ct-step b{display:block;color:#1D3C2A;font-size:16px;margin-bottom:5px;line-height:1.3}
.ct-step span:last-child{display:block;font-size:14px;color:#5C6557;line-height:1.55}

/* screen-reader-only labels, in case the theme does not define .sr-only */
.contact-form .sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* spam trap — hidden from people, visible to bots */
.contact-form .ct-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
