/* Additions to the existing public website. Original content and theme remain. */
.site-nav .client-portal-entry {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 44px;
  border: 1px solid var(--accent-strong, #0e6f66);
  background: var(--accent-strong, #0e6f66);
  color: #fff;
}
.site-nav .client-portal-entry:hover {
  background: var(--accent-deep, #09534d);
  color: #fff;
}
.client-contact-links {display:grid;gap:6px;margin-top:20px;font-size:.875rem;}
.client-contact-links a {color:var(--accent-strong, #0e6f66);font-weight:600;}
.client-contact-addition {display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
.client-contact-addition h2 {margin-bottom:16px;}
.client-contact-addition p {margin-bottom:16px;}
.client-contact-addition form {display:grid;gap:16px;border:1px solid var(--line);border-radius:var(--r-md);padding:24px;}
.client-contact-addition label {display:grid;gap:6px;font-size:.9375rem;font-weight:600;}
.client-contact-addition input,.client-contact-addition textarea {
  width:100%;min-width:0;border:1px solid var(--line);border-radius:var(--r-md);
  padding:10px 12px;font:inherit;background:var(--surface);color:var(--ink);
}
.client-contact-addition textarea {resize:vertical;}
.client-contact-addition .check-label {display:flex;align-items:flex-start;flex-wrap:wrap;font-weight:400;}
.client-contact-addition .check-label input {width:18px;height:18px;margin:2px 4px 0 0;flex:none;}
.client-contact-addition .honeypot {position:absolute;left:-10000px;}
.client-contact-addition .form-status {margin:0;font-size:.875rem;}
.client-contact-addition .error {color:#a32e20;}
.client-contact-addition .success {color:var(--accent-strong, #0e6f66);}
.client-contact-addition .external-contact {display:flex;flex-wrap:wrap;gap:12px;}
@media(max-width:1120px) {
  .site-header .container {position:relative;}
  .site-header .nav-toggle {display:grid;margin-left:auto;}
  .site-header .portal-button {margin-left:auto;}
  .site-header .site-nav {
    position:absolute;top:100%;left:0;right:0;z-index:40;display:none;
    flex-direction:column;align-items:stretch;gap:2px;margin:0;
    padding:12px 16px 16px;border-bottom:1px solid var(--line);
    background:var(--surface, #fff);box-shadow:var(--shadow-2);
  }
  .site-header .site-nav.is-open {display:flex;}
  .site-header .site-nav a {padding:12px 14px;}
}
@media(max-width:700px) {
  .client-contact-addition {grid-template-columns:1fr;gap:24px;}
}
