/* Approved 2026-10-29: shared CTA layout; no copy or asset substitutions. */
.ts-pilot { --review-cta-blue:#0868b9; --review-cta-title:32px; --review-cta-gap:14px; }
.ts-pilot .hero-actions {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;align-items:stretch;max-width:600px;margin-top:30px;}
.ts-pilot .hero-actions .button {width:100%;min-width:0;min-height:56px;height:auto;margin:0;padding:13px 16px;font-size:15px;line-height:1.6;white-space:normal;text-align:center;box-sizing:border-box;}
.ts-pilot .page-contents {margin-top:0;margin-bottom:30px;display:flex;flex-wrap:wrap;gap:16px;font-size:15px;line-height:1.8;}
.ts-pilot .page-contents a {text-underline-offset:4px;}
.ts-pilot .closing-cta {background:var(--review-cta-blue);padding:44px 0;color:#fff;height:auto;min-height:0;}
.ts-pilot .closing-cta .cta-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:44px;align-items:center;}
.ts-pilot .closing-cta .cta-heading {font-size:var(--review-cta-title);font-weight:700;line-height:1.6;letter-spacing:0;margin:8px 0 0;}
.ts-pilot .closing-cta .cta-eyebrow,.ts-pilot .closing-cta .eyebrow {font-size:14px;line-height:1.7;margin:0;color:#d9edfc;}
.ts-pilot .closing-cta .cta-heading+p,.ts-pilot .closing-cta .cta-description {font-size:15px;line-height:1.9;margin:18px 0 0;color:#fff;max-width:none;}
.ts-pilot .closing-cta .cta-actions {position:static;inset:auto;transform:none;display:flex;flex-direction:column;gap:var(--review-cta-gap);padding:0;margin:0;align-self:center;min-width:0;width:100%;}
.ts-pilot .closing-cta .cta-actions .button {display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:56px;height:auto;margin:0;padding:13px 18px;font-size:15px;line-height:1.6;white-space:normal;text-align:center;box-sizing:border-box;}
@media (min-width:701px) and (max-width:1100px) {
 .ts-pilot .hero,.ts-pilot .home-hero,.ts-pilot .product-hero,.ts-pilot .operations-hero,.ts-pilot .organization-hero,.ts-pilot .training-hero,.ts-pilot .recruitment-hero {display:grid;grid-template-columns:minmax(0,1fr);gap:32px;}
 .ts-pilot .hero-actions {grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);max-width:650px;}
 .ts-pilot .hero-figure {padding-top:0;margin-top:0;}
 .ts-pilot .hero>figure,.ts-pilot .home-hero>figure,.ts-pilot .product-hero>figure,.ts-pilot .operations-hero>figure,.ts-pilot .organization-hero>figure,.ts-pilot .training-hero>figure,.ts-pilot .recruitment-hero>figure {width:100%;max-width:680px;margin-inline:auto;}
 .ts-pilot .closing-cta .cta-grid {grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:28px;}
}
@media (max-width:700px) {
 .ts-pilot .hero-actions {grid-template-columns:minmax(0,1fr);gap:14px;margin-top:28px;max-width:none;}
 .ts-pilot .hero-actions .button {font-size:15px;min-height:54px;}
 .ts-pilot .closing-cta {padding:34px 0;}
 .ts-pilot .closing-cta .cta-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:28px;}
 .ts-pilot .closing-cta .cta-heading {font-size:28px;line-height:1.6;}
 .ts-pilot .closing-cta .cta-heading+p,.ts-pilot .closing-cta .cta-description {font-size:15px;line-height:1.9;margin-top:16px;}
 .ts-pilot .closing-cta .cta-actions {position:static;transform:none;margin:0;padding:0;gap:14px;flex-direction:column;}
 .ts-pilot .closing-cta .cta-actions .button {font-size:15px;min-height:54px;width:100%;}
}

/* Repair measured 8px overflow: full-bleed aftercare color without 100vw layout width. */
.ts-pilot.ts-training .aftercare::before {inset:0;box-shadow:0 0 0 100vmax #f2f7f9;clip-path:inset(0 -100vmax);}
.ts-services .organization-block {padding-block:48px 64px;}
.ts-services .organization-block h2 {font-size:28px;line-height:1.6;margin:18px 0 26px;}
.ts-services .organization-block .service-bottom,.ts-services .training-block .service-bottom {margin-top:28px;}
@media(max-width:700px){.ts-services .organization-block {padding-block:28px 44px;}.ts-services .organization-block h2{font-size:26px;}}

/* Keep approved feature headline spans together at desktop boundary widths. */
@media(min-width:1101px){.ts-pilot .hero h1{font-size:clamp(28px,2.8vw,40px);}}

/* Shared header layout: append after page-specific CSS. Scope excludes footer logos. */
.ts-pilot .site-header .header-inner {
  width:calc(100% - 48px);max-width:1280px;height:auto;min-height:88px;
  display:flex;align-items:center;flex-wrap:nowrap;gap:20px;position:relative;
}
.ts-pilot .site-header .brand {width:148px;flex:0 0 148px;}
.ts-pilot .site-header .header-nav {
  display:flex;align-items:center;justify-content:flex-end;gap:24px;
  position:static;margin:0 0 0 auto;padding:0;min-width:0;
  font-size:14px;line-height:1.5;white-space:nowrap;border:0;box-shadow:none;
}
.ts-pilot .site-header .header-nav>a:not(.button) {
  display:flex;align-items:center;min-height:44px;padding-block:10px;
}
.ts-pilot .site-header .header-nav .button,
.ts-pilot .site-header .header-contact {
  flex-shrink:0;min-height:46px;font-size:14px;line-height:1.5;
  padding:11px 16px;margin:0;border-radius:4px;white-space:nowrap;
}
.ts-pilot .site-header .menu-toggle {display:none;}
@media(max-width:1279px) {
  .ts-pilot .site-header .header-inner {
    width:calc(100% - 40px);min-height:76px;height:auto;gap:12px;
  }
  .ts-pilot .site-header .brand {width:140px;flex-basis:140px;}
  .ts-pilot .site-header .header-contact {
    margin-left:auto;min-height:44px;font-size:14px;padding:10px 12px;
  }
  .ts-pilot .site-header .menu-toggle {
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
    width:44px;height:44px;flex:0 0 44px;padding:0;border:0;background:transparent;
  }
  .ts-pilot .site-header .menu-toggle span {display:block;width:22px;height:2px;background:var(--ink);}
  .ts-pilot .site-header .header-nav {
    display:none;position:absolute;z-index:30;left:0;right:0;top:100%;
    margin:0;padding:16px;background:#fff;border:1px solid var(--line);
    box-shadow:0 8px 16px #183f5014;font-size:16px;white-space:normal;
  }
  .ts-pilot .site-header .header-nav.is-open {
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;
  }
  .ts-pilot .site-header .header-nav>a:not(.button) {min-height:44px;padding:10px 4px;}
  .ts-pilot .site-header .header-nav .button {
    grid-column:1/-1;justify-self:stretch;min-height:44px;font-size:16px;width:100%;
  }
}
@media(max-width:359px) {
  .ts-pilot .site-header .header-inner {width:calc(100% - 32px);gap:8px;}
  .ts-pilot .site-header .brand {width:112px;flex-basis:112px;}
  .ts-pilot .site-header .header-contact {font-size:14px;padding-inline:10px;}
}
