.contacts-page{grid-column:1/-1;background:#f7f9fb;border-radius:16px;box-shadow:var(--shadow);padding:28px}.contacts-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:16px}.contacts-heading h1{margin:0;color:var(--navy);letter-spacing:-.035em;font-size:clamp(1.65rem,2.4vw,2.35rem)}.contacts-heading p:last-child{max-width:760px;margin:.55rem 0 0;color:var(--muted);line-height:1.5}.privacy-note{margin-bottom:16px;padding:12px 14px;border-left:4px solid var(--orange);border-radius:8px;background:#fff6ec;color:#5d6876;font-size:.86rem;line-height:1.5}.privacy-note strong{color:var(--navy)}.contacts-status{min-height:22px;margin:0 2px 8px;color:var(--green);font-size:.82rem;font-weight:750}.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.contact-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;background:var(--navy);color:#fff}.contact-card-head strong{font-size:1rem}.contact-card-head span{color:#aeb9c8;font-size:.8rem}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.contact-fields label{display:flex;flex-direction:column;gap:6px;color:#435166;font-size:.8rem;font-weight:800}.contact-fields label.wide{grid-column:1/-1}.contact-fields input{width:100%;min-height:42px;border:1px solid #cbd3dd;border-radius:8px;padding:0 10px;color:var(--ink);background:#fff}.contacts-empty{grid-column:1/-1;padding:44px 20px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:13px;color:var(--muted)}.contacts-print-card{display:none}.print-directory-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.print-directory-heading h2{margin:0;color:var(--navy)}.print-directory-heading>div:last-child{display:flex;flex-direction:column;align-items:end}.print-directory-heading span{color:var(--muted);font-size:.8rem}.contacts-print-table{width:100%;border-collapse:collapse;font-size:.72rem}.contacts-print-table th{padding:7px 6px;background:var(--navy);color:#fff;text-align:left}.contacts-print-table td{padding:7px 6px;border-bottom:1px solid #ccd4de;vertical-align:top}.print-confidential{margin-top:12px;color:#657184;font-size:.7rem;text-align:center}
@media(max-width:900px){.contacts-page{padding:18px 14px}.contacts-heading{align-items:stretch;flex-direction:column}.contacts-heading .button{align-self:flex-start}.contact-cards{grid-template-columns:1fr}}
@media(max-width:560px){.contact-fields{grid-template-columns:1fr}.contact-fields label.wide{grid-column:auto}.contacts-heading .button{width:100%}}
@media print{body.print-contacts .results,body.print-contacts .scorebook-page,body.print-contacts .contacts-heading,body.print-contacts .privacy-note,body.print-contacts .contacts-status,body.print-contacts .contact-cards{display:none!important}body.print-contacts .contacts-page{display:block!important;padding:0;box-shadow:none;background:#fff}body.print-contacts .contacts-print-card{display:block}body.print-contacts main{display:block;width:100%;margin:0}body.print-contacts .contacts-print-table{font-size:8.5pt}body.print-contacts .contacts-print-table th,body.print-contacts .contacts-print-table td{padding:5pt 4pt}}
