/* ==========================================================================
   Contact page — page-specific stylesheet
   ========================================================================== */

.contact-hero{
  padding:64px 28px 40px; text-align:center; border-bottom:1px solid var(--line);
  background:radial-gradient(ellipse at center, var(--brass-wash) 0%, transparent 70%);
}
.contact-hero-inner{ max-width:640px; margin:0 auto; }
.contact-hero h1{
  font-family:var(--font-display); font-size:clamp(30px,4vw,42px); font-weight:700;
  color:var(--ink-900); margin:12px 0 10px; letter-spacing:-.005em;
}
.contact-hero p{ font-size:14.5px; color:var(--ink-500); }

.contact-body{ padding:56px 28px 80px; }
.contact-layout{
  max-width:920px; margin:0 auto; display:grid; grid-template-columns:1fr 280px; gap:32px; align-items:start;
}

.contact-card{
  background:var(--paper-raised); border:1px solid var(--line); border-radius:var(--radius);
  padding:30px 32px;
}

/* Individual / business pill toggle */
.contact-type-row{ display:flex; gap:10px; margin-top:8px; margin-bottom:22px; }
.contact-type-option{ flex:1; position:relative; }
.contact-type-option input{ position:absolute; opacity:0; width:0; height:0; }
.contact-type-option label{
  display:flex; align-items:center; justify-content:center; gap:8px;
  padding:13px 16px; border:1.5px solid var(--line-strong); border-radius:9px;
  font-family:var(--font-mono); font-size:13px; font-weight:600; color:var(--ink-700);
  cursor:pointer; transition:border-color .15s, background .15s, color .15s;
}
.contact-type-option input:checked + label{
  border-color:var(--brass); background:var(--brass-wash); color:var(--brass-deep);
}
.contact-type-option label svg{ flex:0 0 16px; }

/* "How did you hear about us" tick chips */
.contact-hear-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:8px; }
@media(max-width:560px){ .contact-hear-grid{ grid-template-columns:1fr; } }
.contact-hear-option{ position:relative; }
.contact-hear-option input{ position:absolute; opacity:0; width:0; height:0; }
.contact-hear-option label{
  display:flex; align-items:center; gap:10px; padding:11px 14px;
  border:1.5px solid var(--line-strong); border-radius:9px; cursor:pointer;
  font-size:13px; color:var(--ink-700); transition:border-color .15s, background .15s;
}
.contact-hear-option input:checked + label{ border-color:var(--sage); background:var(--sage-wash); color:var(--sage-deep); }
.contact-tick{
  flex:0 0 18px; width:18px; height:18px; border-radius:5px; border:1.5px solid var(--line-strong);
  display:flex; align-items:center; justify-content:center; transition:border-color .15s, background .15s;
}
.contact-hear-option input:checked + label .contact-tick{ border-color:var(--sage); background:var(--sage); color:#FFF; }
.contact-tick svg{ opacity:0; transition:opacity .1s; }
.contact-hear-option input:checked + label .contact-tick svg{ opacity:1; }

/* Sidebar */
.contact-side{ display:flex; flex-direction:column; gap:16px; }
.contact-side-card{
  background:var(--paper-raised); border:1px solid var(--line); border-radius:var(--radius); padding:20px 22px;
}
.contact-side-card h4{ font-family:var(--font-display); font-size:15px; font-weight:600; color:var(--ink-900); margin-bottom:6px; }
.contact-side-card p{ font-size:13px; color:var(--ink-500); line-height:1.6; }
.contact-side-card a{ color:var(--brass-deep); font-weight:600; }
