/* Shared public footer, fix1062. Scoped to avoid changing role workspaces. */
footer.ct-public-footer{box-sizing:border-box;width:100%;max-width:none;margin:48px 0 0;padding:48px max(28px,calc((100vw - 1180px)/2)) 24px;background:#071d2e;color:#afc7da;border-top:3px solid #ee9a36;font:15px/1.5 Arial,sans-serif;text-align:left}
.ct-public-footer *{box-sizing:border-box}
.ct-public-footer .ct-pf-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:32px;width:100%;max-width:1180px;margin:0 auto}
.ct-public-footer .ct-pf-logo{font-size:20px;letter-spacing:.045em;font-weight:800;color:#fff;text-decoration:none;display:inline-block;margin:0 0 12px}
.ct-public-footer .ct-pf-logo span{color:#ffac48;display:inline}
.ct-public-footer p{color:#afc7da;margin:0 0 12px;font-size:16px;line-height:1.5}
.ct-public-footer .ct-pf-description{max-width:290px;font-size:14px;color:#9db8cb}
.ct-public-footer .ct-pf-social{flex-direction:row;flex-wrap:wrap;column-gap:20px;margin:2px 0 0}
.ct-public-footer .ct-pf-social svg{flex:none}
.ct-public-footer nav{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;margin:0;padding:0;min-width:0}
.ct-public-footer nav h2{font:700 14px/1.5 Arial,sans-serif;letter-spacing:.04em;color:#fff;margin:0 0 12px;padding:0}
.ct-public-footer nav a{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:6px 0;margin:0;color:#b6cddd;font-size:14px;font-weight:400;text-decoration:none;line-height:1.4;white-space:normal;border:0;background:none;box-shadow:none}
.ct-public-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.ct-public-footer a:focus-visible{outline:3px solid #65d5ea;outline-offset:5px;border-radius:3px}
.ct-public-footer nav .ct-pf-partner{font-weight:700;color:#ffb65e;border-bottom:1px solid #b77731}
.ct-public-footer .ct-pf-bottom{max-width:1180px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:32px auto 0;padding:18px 0 0;border-top:1px solid #254053}
.ct-public-footer .ct-pf-bottom nav{flex-direction:row;gap:24px}
.ct-public-footer .ct-pf-bottom a{font-size:13px;color:#9db8cb;text-decoration:none}
.ct-footer-note{max-width:1180px;margin:32px auto;padding:0 28px;color:#527087;font:14px/1.6 Arial,sans-serif}
@media(max-width:900px){.ct-public-footer .ct-pf-grid{grid-template-columns:1fr 1fr;gap:30px 24px}}
@media(max-width:520px){footer.ct-public-footer{padding:34px 22px 22px}.ct-public-footer .ct-pf-grid{grid-template-columns:1fr;gap:24px}.ct-public-footer nav a{min-height:44px}.ct-public-footer .ct-pf-bottom{align-items:flex-start;flex-direction:column;gap:10px}}

/* (cl-batch138, John 2026-10-28: "The footer needs updates as well") the footer wordmark matches the new header (cl-batch136):
   white ControlsTrainer in a medium sans serif over the split cyan/orange line. */
.ct-public-footer .ct-pf-logo{display:inline-flex;flex-direction:column;align-items:stretch;gap:9px;font-family:Inter,"Segoe UI Variable Display","Segoe UI",Arial,sans-serif;font-size:26px;font-weight:600;letter-spacing:-.045em;line-height:1.06;color:#fff;text-transform:none}
.ct-public-footer .ct-pf-logo .ct-pf-name{color:#fff;display:block}
.ct-public-footer .ct-pf-logo .ct-pf-line{display:flex;gap:6px;height:3px}
.ct-public-footer .ct-pf-logo .ct-pf-line::before,.ct-public-footer .ct-pf-logo .ct-pf-line::after{content:"";flex:1;height:3px;border-radius:3px}
.ct-public-footer .ct-pf-logo .ct-pf-line::before{background:#18c8ed;box-shadow:0 0 8px #18c8ed55}
.ct-public-footer .ct-pf-logo .ct-pf-line::after{background:#ff9a2f;box-shadow:0 0 8px #ff9a2f55}
.ct-public-footer .ct-pf-logo:focus-visible{outline:2px solid #18c8ed;outline-offset:6px;border-radius:3px}
/* (cl-batch138b) the footer's top edge: the header's split line (cyan left, orange right, small centre gap) instead of solid orange */
.ct-public-footer{position:relative;border-top-color:transparent!important}
.ct-public-footer::before,.ct-public-footer::after{content:"";position:absolute;top:-3px;width:calc(50% - 3px);height:3px;pointer-events:none}
.ct-public-footer::before{left:0;background:#18c8ed;box-shadow:0 0 9px #18c8ed55}
.ct-public-footer::after{right:0;background:#ff9a2f;box-shadow:0 0 9px #ff9a2f55}
