/* T&S GROUP v2-6-23 — subtle card frames + legal checkbox alignment */
:root{--v2623-line:#c6d3df;--v2623-line-soft:#d4dee7;--v2623-top:#6f8faa}

/* Client correction: the new block outlines must be quiet, not bright blue. */
body[data-page-key="services-hub"] .services-hub-card,
body[data-page-key="industries-hub"] .industries-hub-card{
  border-color:var(--v2623-line)!important;
}
.principles-page .pr-card{
  border-color:var(--v2623-line)!important;
}
.service-page .sp-info-card,
.service-page .sp-step{
  border-color:var(--v2623-line-soft)!important;
  border-top-color:var(--v2623-top)!important;
}
.service-page .sp-service-card,
.service-page .sp-related-card,
.principles-page .pr-result-card,
body[data-page-key="home"] .home-principle-card,
body[data-page-key="home"] .principles-home-teaser article{
  border-color:var(--v2623-line)!important;
}

/* Legal confirmations: checkbox and its document title always stay on one row.
   These selectors intentionally outrank the generic diagnostic-form label rules. */
.diagnostic-form label.ts-form-confirmation,
.ip-diagnostic-form label.ts-form-confirmation,
.sp-diagnostic-form label.ts-form-confirmation,
form.ts-feedback-form label.ts-form-confirmation{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  column-gap:10px!important;
  row-gap:0!important;
  align-items:start!important;
  margin:0!important;
  padding:0!important;
  min-height:18px!important;
  width:100%!important;
  text-transform:none!important;
  letter-spacing:0!important;
  cursor:pointer!important;
}
.diagnostic-form label.ts-form-confirmation>.ts-form-checkbox,
.ip-diagnostic-form label.ts-form-confirmation>.ts-form-checkbox,
.sp-diagnostic-form label.ts-form-confirmation>.ts-form-checkbox,
form.ts-feedback-form label.ts-form-confirmation>.ts-form-checkbox{
  grid-column:1!important;
  grid-row:1!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  margin:0!important;
  align-self:start!important;
}
.diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text,
.ip-diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text,
.sp-diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text,
form.ts-feedback-form label.ts-form-confirmation>.ts-form-confirmation__text{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
  font:800 11px/18px Arial,sans-serif!important;
  color:#0b3158!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text a,
.ip-diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text a,
.sp-diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text a,
form.ts-feedback-form label.ts-form-confirmation>.ts-form-confirmation__text a{
  color:#0b3158!important;
  font-weight:900!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:2px!important;
  border-bottom:0!important;
}

/* Explanatory sentence under the two confirmations. Highlight only the privacy-policy link. */
.ts-form-consent-note{
  margin:14px 0 16px!important;
  color:#70859a!important;
  font:11px/1.55 Arial,sans-serif!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.ts-form-consent-note a{
  color:#0b3158!important;
  font-weight:900!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:2px!important;
  border-bottom:0!important;
}

@media(max-width:700px){
  .diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text,
  .ip-diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text,
  .sp-diagnostic-form label.ts-form-confirmation>.ts-form-confirmation__text,
  form.ts-feedback-form label.ts-form-confirmation>.ts-form-confirmation__text,
  .ts-form-consent-note{font-size:10px!important}
}
