/* /contact · page layout only. Form primitives live in bond-forms.css.
   Desktop: a 5/7 split on the 1240 container. The left column holds the title
   and the two direct routes, the right column the form, so both start on one
   line and the eye reads title, routes, form in DOM order. */
.ct{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,7vw,104px);align-items:start;
  padding:clamp(16px,2.4vw,32px) 0 var(--junction)}
.ct__aside{position:sticky;top:calc(var(--nav-h) + var(--s-7))}
.ct__title{margin:0 0 var(--s-4)}
.ct__lead{font-size:var(--t-lead);line-height:1.55;color:var(--body);margin:0;max-width:30ch;text-wrap:pretty}
.ct-routes{margin-top:var(--s-8);border-top:1px solid var(--line)}
.ct-route{padding:var(--s-6) 0;border-bottom:1px solid var(--line)}
.ct-route__h{font-size:var(--t-h4);font-weight:var(--fw-med);line-height:1.35;color:var(--ink);margin:0 0 var(--s-2)}
.ct-route p{font-size:var(--t-body);line-height:1.55;color:var(--body);margin:0}
.ct-route__links{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-5);margin-top:var(--s-3)!important}
.ct-route__links a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}
/* Deliberate contact-only telephone exception; out-ranks the canonical prose-link rule. */
main .ct-route p>a.ct-route__tel:not(.pill):not(.btn):not(.go){display:inline-flex;align-items:center;min-height:48px;margin-top:var(--s-1);
  font-size:var(--t-h3);font-weight:var(--fw-med);letter-spacing:.01em;color:var(--ink);text-decoration:none;font-variant-numeric:tabular-nums;white-space:nowrap}
main .ct-route p>a.ct-route__tel:not(.pill):not(.btn):not(.go):hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.ct__main{min-width:0;max-width:40rem}
#enquiry{scroll-margin-top:calc(var(--nav-h) + var(--s-5))}

@media(max-width:1080px){
  .ct{grid-template-columns:minmax(0,1fr);gap:var(--s-9)}
  .ct__aside{position:static}
  .ct__lead{max-width:44ch}
  .ct-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s-7);border-top:0}
  .ct-route{border-top:1px solid var(--line);border-bottom:0;padding-bottom:0}
  .ct__main{max-width:40rem}
}
@media(max-width:760px){
  .ct{gap:var(--s-8)}
  .ct-routes{grid-template-columns:minmax(0,1fr);margin-top:var(--s-6)}
  .ct-route{padding:var(--s-5) 0}
  .ct-route:last-child{border-bottom:1px solid var(--line);padding-bottom:var(--s-5)}
}
