/* Swerve Growth Suite 2.1 — cohesive public & client experience.
   All selectors are scoped to Suite components; no site logo overrides. */
:root{--sgs-ink:#14233a;--sgs-muted:#5d7089;--sgs-border:#dfe7f2;--sgs-brand:#215ee8;--sgs-tint:#f5f8fe;--sgs-focus:#14b8a6}
.sgs-wrap,.sgs-client-dashboard,.sgs-client-login,.sgs-business-portal{color:var(--sgs-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
.sgs-wrap,.sgs-client-dashboard,.sgs-client-login,.sgs-business-portal{min-width:0;max-width:1160px;margin-inline:auto}
.sgs-wrap *,.sgs-client-dashboard *,.sgs-client-login *,.sgs-business-portal *{box-sizing:border-box}
.sgs-wrap h2,.sgs-client-dashboard h2,.sgs-client-login h2,.sgs-business-portal h2{font-family:'Space Grotesk',Inter,system-ui,sans-serif;letter-spacing:-.045em;line-height:1.14}
.sgs-wrap p,.sgs-client-dashboard p,.sgs-business-portal p{overflow-wrap:break-word}
.sgs-wrap .sgs-grid,.sgs-client-dashboard .sgs-portal-cols{gap:clamp(14px,2vw,25px)}
.sgs-wrap .sgs-form,.sgs-client-dashboard .sgs-form{max-width:100%}
.sgs-wrap label,.sgs-client-dashboard label,.sgs-client-login label,.sgs-business-portal label{color:#2d405a;font-weight:650;font-size:.9rem;line-height:1.45}
.sgs-wrap :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=file]),select,textarea),
.sgs-client-dashboard :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=file]),select,textarea),
.sgs-client-login :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=file]),select,textarea),
.sgs-business-portal :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=file]),select,textarea){box-sizing:border-box;max-width:100%;min-width:0;width:100%;min-height:46px;background:#fff;border:1px solid #cbd8e8;border-radius:11px;color:#15273e;padding:11px 14px;line-height:1.45;font:500 .94rem/1.45 Inter,system-ui,sans-serif;box-shadow:0 1px 2px #12264205;transition:border-color .2s,box-shadow .2s}
.sgs-wrap :is(textarea),.sgs-client-dashboard textarea,.sgs-business-portal textarea{min-height:116px;resize:vertical}
.sgs-wrap :is(input[type=checkbox],input[type=radio]),.sgs-client-dashboard :is(input[type=checkbox],input[type=radio]),.sgs-business-portal :is(input[type=checkbox],input[type=radio]){width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;accent-color:var(--sgs-brand);vertical-align:middle;margin:0 7px 0 0}
.sgs-wrap :is(input,select,textarea):focus-visible,.sgs-client-dashboard :is(input,select,textarea):focus-visible,.sgs-client-login :is(input,select,textarea):focus-visible,.sgs-business-portal :is(input,select,textarea):focus-visible{outline:3px solid #1b83e933;outline-offset:1px;border-color:#3479e4}
.sgs-wrap .sgs-button,.sgs-client-dashboard .sgs-button,.sgs-client-login .sgs-button,.sgs-business-portal .sgs-button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:12px 23px;border:1px solid #2563eb;border-radius:999px;background:#2563eb;color:#fff!important;text-decoration:none!important;font-weight:700;font-size:.9rem;line-height:1.25;white-space:normal;box-shadow:0 8px 24px #225ce921;transition:background-color .2s,box-shadow .2s,transform .2s;cursor:pointer}
.sgs-wrap .sgs-button:hover,.sgs-client-dashboard .sgs-button:hover,.sgs-client-login .sgs-button:hover,.sgs-business-portal .sgs-button:hover{background:#1746b9;color:#fff!important;box-shadow:0 12px 28px #215ee830;transform:translateY(-1px)}
.sgs-wrap .sgs-button:focus-visible,.sgs-client-dashboard .sgs-button:focus-visible,.sgs-client-login .sgs-button:focus-visible,.sgs-business-portal .sgs-button:focus-visible{outline:3px solid #14b8a6;outline-offset:3px}
.sgs-wrap .sgs-button:disabled,.sgs-client-dashboard .sgs-button:disabled,.sgs-client-login .sgs-button:disabled,.sgs-business-portal .sgs-button:disabled{opacity:.7;cursor:wait;transform:none}
.sgs-wrap .sgs-plan-finder-submit{margin-top:clamp(22px,3vw,30px)}
.sgs-wrap .sgs-feedback,.sgs-client-dashboard .sgs-feedback{background:#edfaf6;border:1px solid #c6eadc;color:#176748;border-radius:12px;padding:15px 18px;font-weight:600;line-height:1.5}
.sgs-wrap .sgs-result{margin-top:26px;padding:clamp(22px,3vw,32px);border-radius:18px;background:linear-gradient(125deg,#f5f9ff,#f2faf9);border:1px solid #d5e7f7;scroll-margin-top:110px}
.sgs-wrap .sgs-result[hidden]{display:none!important}
.sgs-wrap .sgs-plan-finder,.sgs-wrap .sgs-form,.sgs-client-dashboard .sgs-portal-module,.sgs-business-portal .sgs-private-panel{border-radius:22px}
.sgs-business-portal{margin:clamp(24px,4vw,42px) auto 0}
.sgs-business-portal>h2{font-size:clamp(24px,3vw,35px)}
.sgs-business-portal .sgs-private-panel{border:1px solid var(--sgs-border);background:#fff;padding:clamp(20px,3vw,32px);margin-bottom:20px;box-shadow:0 10px 32px #10223d08}
.sgs-business-portal .sgs-portal-item{border:1px solid #e3eaf4;background:#f8faff;border-radius:13px;padding:20px;margin:15px 0}
.sgs-business-portal .sgs-portal-item strong{overflow-wrap:anywhere}
.sgs-client-dashboard .sgs-ticket-inbox__item{transition:background-color .2s,border-color .2s,transform .2s}
.sgs-client-dashboard .sgs-ticket-inbox__item:hover,.sgs-client-dashboard .sgs-ticket-inbox__item:focus-visible{background:#ebf3ff;outline-offset:-3px}
.sgs-client-dashboard .sgs-ticket-message__body{max-width:100%;overflow-wrap:anywhere}
.sgs-client-dashboard .sgs-ticket-thread{scrollbar-gutter:stable}
.sgs-client-dashboard .sgs-support-conversation-pane{min-width:0}
.sgs-client-dashboard .sgs-ticket-reply-form__actions{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.sgs-client-dashboard .sgs-ticket-reply-form__actions p{font-size:12px;max-width:420px;margin:0;color:#617590}
.sgs-client-dashboard .sgs-support-no-ticket{padding:clamp(32px,5vw,70px) 22px;text-align:center}
.sgs-client-dashboard .sgs-support-no-ticket strong{display:block;color:#1c3151;font-size:18px;margin-bottom:12px}
.sgs-portal-jumplinks a:focus-visible,.sgs-client-dashboard a:focus-visible{outline:3px solid #1e7fe644;outline-offset:3px}
.sgs-client-dashboard :is(.sgs-ticket-conversation,.sgs-portal-projects,.sgs-support-workspace),.sgs-wrap{scroll-margin-top:108px}
@media(max-width:680px){.sgs-wrap,.sgs-business-portal{width:100%}.sgs-wrap .sgs-grid{grid-template-columns:minmax(0,1fr)}.sgs-client-dashboard .sgs-ticket-reply-form__actions .sgs-button{width:100%}.sgs-business-portal .sgs-private-panel{padding:20px 16px}.sgs-wrap .sgs-button{max-width:100%}}
@media(prefers-reduced-motion:reduce){.sgs-wrap .sgs-button,.sgs-client-dashboard .sgs-button,.sgs-client-login .sgs-button,.sgs-client-dashboard .sgs-ticket-inbox__item{transition:none!important;transform:none!important}}

/* v2.2.1 — WordPress wp_login_form() submits must not inherit ordinary text
   field backgrounds. Keep the button visible across themes, hover and focus. */
.sgs-client-login .sgs-login-form form p.login-submit{margin-block:24px 0}
.sgs-client-login .sgs-login-form #sgs_client_submit,
.sgs-client-login .sgs-login-form input[type="submit"]{
  display:block!important;
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:14px 20px!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  border:1px solid #225ce2!important;
  border-radius:12px!important;
  background:linear-gradient(110deg,#2563eb 0%,#1647c4 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:700 15px/1.35 Inter,system-ui,sans-serif!important;
  text-align:center!important;
  letter-spacing:0!important;
  text-shadow:none!important;
  opacity:1;
  box-shadow:0 10px 24px rgba(37,99,235,.20)!important;
  cursor:pointer!important;
  transition:background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.sgs-client-login .sgs-login-form #sgs_client_submit:hover,
.sgs-client-login .sgs-login-form input[type="submit"]:hover{
  background:linear-gradient(110deg,#1b50cf 0%,#133c9f 100%)!important;
  border-color:#123a99!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 14px 26px rgba(27,80,207,.26)!important;
  transform:translateY(-1px);
}
.sgs-client-login .sgs-login-form #sgs_client_submit:focus-visible,
.sgs-client-login .sgs-login-form input[type="submit"]:focus-visible{
  outline:3px solid #14b8a6!important;
  outline-offset:3px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.sgs-client-login .sgs-login-form input[type="submit"]:disabled{
  opacity:.72;
  cursor:wait!important;
  transform:none;
}
@media(prefers-reduced-motion:reduce){
 .sgs-client-login .sgs-login-form input[type="submit"]{transition:none!important;transform:none!important}
}

/* Private support ticket external file link note (v2.2.2). */
.sgs-ticket-sharing{min-width:0;border:1px solid #d2deee;background:#f3f7fd;border-radius:14px;padding:17px 19px;margin:15px 0 20px;color:#223653;box-sizing:border-box}
.sgs-ticket-sharing strong{font-weight:700;color:#142845}
.sgs-ticket-sharing p{font-size:13px;line-height:1.65;color:#455c7d;margin:9px 0 8px}
.sgs-ticket-sharing .sgs-ticket-sharing__privacy{color:#586d89;font-size:12px}
.sgs-ticket-sharing label{display:block;font-size:13px;font-weight:700;color:#142845;margin:14px 0 7px}
.sgs-ticket-sharing label span{font-weight:400;color:#58708e}
.sgs-ticket-sharing input[type=url]{display:block;box-sizing:border-box;width:100%;max-width:100%;background:white;color:#152641;border:1px solid #becde1;border-radius:11px;min-height:45px;padding:10px 12px;font-size:14px}
.sgs-ticket-sharing input[type=url]:focus-visible{outline:3px solid #14b8a6;outline-offset:2px}
.sgs-ticket-shared-file{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:13px 0 0!important;padding:10px 12px;border:1px solid #c6d7ef;background:rgba(227,237,255,.65);border-radius:10px;font-size:13px;max-width:100%;overflow-wrap:anywhere}
.sgs-ticket-shared-file a{font-weight:700;color:#1749aa;text-decoration:underline;text-underline-offset:3px}
.sgs-ticket-shared-file small{font-size:11px;color:#647995}
@media(max-width:580px){.sgs-ticket-sharing{padding:14px}}

/* Branded login error without user/account enumeration. */
.sgs-client-login .sgs-auth-error{padding:12px 15px;border:1px solid #f5c2cb;border-radius:10px;background:#fff2f3;color:#8f293f;font:600 13px/1.6 Inter,system-ui;margin:12px 0 20px}
