/* CK-10 page design, 2026-10-19.
   Grounded in the already-approved homepage: core navy gradient; the neutral text roles;
   Rajdhani/Michroma; organic variation in section backgrounds; concise accent color.
   No pure white, no orange overlays/radials, no repetitive texturing, no decorative numbering. */
.spx-doc-page{
  --ck-navy:#000512; --ck-deep:#010921; --ck-blue:#011140; --ck-surface:#0F1C41;
  --ck-surface-dark:#071331; --ck-border:#2B3452; --ck-line:#515970;
  --ck-main:#EBEBEB; --ck-head:#C4C6CC; --ck-subhead:#A6A8AD; --ck-body:#9094A3;
  --ck-muted:#7A8299; --ck-gold:#F1C13C; --ck-orange:#F1691D;
  background:var(--ck-deep);color:var(--ck-body);
  font-family:"Rajdhani",system-ui,sans-serif;min-height:58vh;
}
.spx-doc-page *, .spx-doc-page *::before, .spx-doc-page *::after{box-sizing:border-box}
.spx-doc-page .spx-doc-container{width:min(calc(100% - 40px),1120px);margin-inline:auto}
.spx-doc-page .spx-doc-eyebrow{font-weight:700;font-size:.78rem;text-transform:uppercase;color:var(--ck-orange);margin:0 0 12px;line-height:1.15;letter-spacing:.02em}
.spx-doc-page h1{margin:0;font:400 clamp(1.65rem,2.35vw,2.2rem)/1.26 "Michroma",sans-serif;color:var(--ck-main);max-width:720px;text-wrap:balance}
.spx-doc-page h2{margin:0;color:var(--ck-head);font:700 clamp(1.3rem,1.78vw,1.55rem)/1.22 "Rajdhani",sans-serif}
.spx-doc-page h3{margin:0;color:var(--ck-subhead);font:700 1.14rem/1.26 "Rajdhani",sans-serif}
.spx-doc-page p{color:var(--ck-body);font-size:1.08rem;line-height:1.48}
.spx-doc-page a:not(.button){color:var(--ck-head)}
.spx-doc-page a:not(.button):hover,.spx-doc-page a:not(.button):focus-visible{color:var(--ck-main)}
.spx-doc-page :is(a,button):focus-visible{outline:2px solid var(--ck-gold);outline-offset:3px}
.spx-doc-page .button-primary{color:var(--ck-main);box-shadow:none;background:#C9480F;border:1px solid var(--ck-orange)}
.spx-doc-page .button-primary:hover,.spx-doc-page .button-primary:focus-visible{background:var(--ck-orange);color:var(--ck-main);box-shadow:none}
.spx-doc-intro{padding:55px 0 59px;background:linear-gradient(90deg,var(--ck-navy),var(--ck-blue))}
.spx-doc-hero-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.65fr);gap:52px;align-items:center}
.spx-doc-lede{margin:16px 0 0!important;max-width:720px;color:var(--ck-subhead)!important;font-size:1.13rem!important;line-height:1.48!important}
.spx-doc-contents{max-width:290px;justify-self:end;width:100%;padding:18px 22px 18px;background:var(--ck-surface-dark);border:1px solid var(--ck-border);border-radius:9px}
.spx-doc-contents p{font-size:.9rem;margin:0 0 10px;color:var(--ck-gold);font-weight:700;text-transform:uppercase}
.spx-doc-contents ul{padding:0;margin:0;list-style:none;display:grid;gap:7px}
.spx-doc-contents a{display:block;text-decoration:none;color:var(--ck-head)!important;font-size:.98rem;line-height:1.2}
.spx-doc-contents a:hover,.spx-doc-contents a:focus-visible{text-decoration:underline;text-underline-offset:3px}
.spx-doc-reading{padding:54px 0 78px;background:var(--ck-deep)}
.spx-doc-prose{max-width:960px}
.spx-doc-prose--longform{display:grid;gap:15px;max-width:900px}
.spx-doc-subsection{scroll-margin-top:100px}
/* Policy and guidelines panels use the actual homepage Partners card class,
   including its canonical thin orange top accent. Only remove the promotional
   minimum height so shorter policy copy fits appropriately. */
.spx-doc-prose .spx-doc-subsection.partners-card{min-height:0}
.spx-doc-prose--tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.spx-doc-subsection h2{margin:0 0 11px}
.spx-doc-subsection p{margin:0 0 10px}
.spx-doc-subsection p:last-child{margin-bottom:0}
.spx-doc-subsection strong{color:var(--ck-subhead);font-weight:700}
.spx-doc-subsection a{text-decoration:underline;text-decoration-color:var(--ck-line);text-underline-offset:3px}
.spx-doc-related{padding:23px 0 27px;background:var(--ck-navy)}
.spx-doc-related-layout{display:flex;gap:22px;align-items:baseline;flex-wrap:wrap}
.spx-doc-related-layout>span{font-size:.87rem;color:var(--ck-gold);font-weight:700;text-transform:uppercase}
.spx-doc-related ul{display:flex;gap:12px 22px;flex-wrap:wrap;padding:0;margin:0;list-style:none}
.spx-doc-related li{font-size:1rem}
.spx-doc-related a{text-decoration:none}
.spx-doc-directory{padding:56px 0 64px;background:var(--ck-deep)}
.spx-doc-directory-intro{max-width:800px;margin-bottom:26px}
.spx-doc-directory-intro h2{margin-bottom:10px}
.spx-doc-directory-intro p{margin:0;max-width:760px}
.spx-doc-index{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1030px}
.spx-doc-index li{min-width:0}
.spx-doc-index-link:not(.compete-card){display:block;min-height:102px;text-decoration:none!important;padding:22px 24px;border:1px solid var(--ck-border);background:linear-gradient(90deg,var(--ck-surface),var(--ck-surface-dark));border-radius:8px;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.spx-doc-directory--published .spx-doc-index-link.compete-card{display:block;min-height:0;text-decoration:none!important}
.spx-doc-index-name{display:block;color:var(--ck-head);font-size:1.23rem;font-weight:700;line-height:1.16}
.spx-doc-index-desc{display:block;color:var(--ck-body);font-size:1rem;line-height:1.37;margin-top:8px}
.spx-doc-mission{padding:58px 0 62px;background:linear-gradient(90deg,var(--ck-navy),var(--ck-blue))}
.spx-doc-mission-intro{max-width:900px}
.spx-doc-mission-intro h2{color:var(--ck-head);font-size:clamp(1.5rem,2vw,1.85rem);margin:0 0 13px}
.spx-doc-mission-intro p:not(.spx-doc-eyebrow){max-width:810px;margin:0;color:var(--ck-subhead);font-size:1.11rem;line-height:1.5}
.spx-doc-mission-quote.compete-card{max-width:1020px;min-height:0;margin:28px 0 0;padding:28px 34px;font-family:"Rajdhani",system-ui,sans-serif;font-size:clamp(1.22rem,1.65vw,1.46rem);font-weight:600;line-height:1.42;color:var(--ck-head)}
.spx-doc-framework{background:var(--spx-field-lines-subtle),linear-gradient(90deg,var(--ck-navy),var(--ck-blue))}
.spx-doc-framework .spx-doc-index{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.spx-doc-framework .spx-doc-index-link{min-height:115px;padding:18px 19px;box-shadow:none;background:var(--ck-surface-dark)}
.spx-doc-framework .spx-doc-index-name{font-size:1.13rem;color:var(--ck-subhead)}
.spx-doc-framework .spx-doc-index-desc{font-size:.95rem;margin-top:6px}
.spx-doc-page .spx-doc-index-link.spx-link-pending{cursor:not-allowed;opacity:.86}
.spx-doc-contactline{padding:38px 0 47px;background:var(--ck-deep)}
.spx-doc-contactline .spx-doc-container{padding:28px 30px;background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:9px}
.spx-doc-contactline p{margin:8px 0 0}
.spx-doc-contactline a{text-decoration:underline;text-decoration-color:var(--ck-line);text-underline-offset:3px}
.spx-doc-intro--contact{padding:62px 0 66px}
.spx-doc-intro--partner{background:linear-gradient(90deg,rgba(0,5,18,.96) 0%,rgba(1,17,64,.86) 100%),url("/assets/spx-blazing-horizon-optimized.jpg") center center/cover no-repeat}
.spx-doc-intro--contact .spx-doc-hero-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.72fr)}
.spx-doc-contact-panel{justify-self:stretch;padding:28px 30px;border-radius:10px;background:var(--ck-surface-dark);border:1px solid var(--ck-border);box-shadow:0 12px 28px rgba(0,0,0,.2);display:grid;gap:17px}
.spx-doc-contact-panel .spx-doc-contact-label{color:var(--ck-gold);font-weight:700;text-transform:uppercase;margin:0;font-size:.87rem}
.spx-doc-contact-panel .button{width:100%;min-height:44px;padding:10px 16px}
.spx-doc-contact-panel p:last-child{margin:0;font-size:1rem}
.spx-doc-contact-panel a{text-decoration:underline;text-decoration-color:var(--ck-line);text-underline-offset:3px}
.spx-doc-intro--contact .spx-doc-contact-panel{padding:34px 32px;gap:21px}
.spx-doc-contact-directory{padding-top:62px}
.spx-doc-general-actions{display:flex;align-items:center;flex-wrap:wrap;column-gap:18px;row-gap:12px;margin-bottom:36px}
.spx-doc-general-alternative{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--ck-body);font-size:1.05rem}
/* Canonical "Follow Build Updates" tertiary treatment on the five General
   Inquiries email links. Keep the site's existing .inline-link and
   .spx-intake-text-link behaviors; unlike that homepage CTA, email
   destinations are not directional and have no arrow. */
.spx-doc-contact-general a.inline-link.spx-intake-text-link{
  color:var(--text);
  text-decoration:underline;
  text-decoration-color:var(--orange);
  text-underline-offset:4px;
}
.spx-doc-contact-general a.inline-link.spx-intake-text-link:hover,
.spx-doc-contact-general a.inline-link.spx-intake-text-link:focus-visible{color:var(--text-soft)}
.spx-doc-contact-general a.inline-link.spx-intake-text-link::after{content:none}
.spx-doc-page .spx-doc-contact-panel .button-secondary{color:var(--ck-main);background:var(--ck-navy);border-color:var(--ck-orange);box-shadow:none}
.spx-doc-page .spx-doc-contact-panel .button-secondary:hover,
.spx-doc-page .spx-doc-contact-panel .button-secondary:focus-visible{color:var(--ck-main);background:var(--ck-deep);border-color:var(--ck-orange)}
.spx-doc-page .spx-doc-contact-panel a.inline-link{color:var(--ck-gold);text-decoration:none;font-size:.96rem;font-weight:700}
.spx-doc-page .spx-doc-contact-panel a.inline-link:hover{color:var(--ck-head)}
.spx-doc-page .spx-doc-contact-panel .spx-doc-contact-email-cta{justify-self:start;display:inline-flex;max-width:100%;overflow-wrap:anywhere}
.spx-doc-contact-directory .spx-doc-index-contact > li,
.spx-doc-contact-directory .spx-doc-briefing > li{padding:20px 21px;min-height:137px;border:1px solid var(--ck-border);background:var(--ck-surface-dark);border-radius:8px;box-shadow:none}
.spx-doc-contact-directory .spx-doc-briefing h3,
.spx-doc-contact-directory .spx-doc-contact-card h3{margin:0 0 10px;color:var(--ck-head);font-size:1.18rem}
.spx-doc-contact-card p{margin:0 0 12px;font-size:1rem;line-height:1.35}
.spx-doc-contact-card .spx-doc-email-link{max-width:100%;word-break:break-word}

.spx-doc-page .spx-doc-form-button:disabled{opacity:1;color:var(--ck-main);background:#C9480F;border:1px solid var(--ck-orange);box-shadow:none;cursor:not-allowed;transform:none}
.spx-doc-contact-directory{background:var(--ck-deep)}
.spx-doc-index-contact{max-width:1030px}
.spx-doc-briefing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;margin:0;list-style:none}
.spx-doc-briefing li{padding:20px 21px;background:var(--ck-surface-dark);border:1px solid var(--ck-border);border-radius:8px}
.spx-doc-briefing h3{margin:0 0 10px;color:var(--ck-head);font-size:1.21rem}
.spx-doc-briefing p{margin:0}
@media(max-width:870px){
.spx-doc-hero-layout,.spx-doc-intro--standards .spx-doc-hero-layout,.spx-doc-intro--contact .spx-doc-hero-layout{grid-template-columns:1fr;gap:25px}
.spx-doc-contents{justify-self:start;max-width:100%}
.spx-doc-contents ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}

.spx-doc-framework .spx-doc-index{grid-template-columns:repeat(2,minmax(0,1fr))}
.spx-doc-briefing{grid-template-columns:1fr}
}
@media(max-width:620px){
.spx-doc-page .spx-doc-container{width:calc(100% - 34px)}
.spx-doc-page h1{font-size:clamp(1.55rem,6vw,1.85rem)}
.spx-doc-intro{padding:35px 0 40px}
.spx-doc-reading{padding:36px 0 49px}
.spx-doc-prose--tiles,.spx-doc-index,.spx-doc-framework .spx-doc-index{grid-template-columns:1fr}
.spx-doc-contents ul{grid-template-columns:1fr}
.spx-doc-prose .spx-doc-subsection.partners-card{padding:20px 21px}
.spx-doc-directory{padding:37px 0 46px}
.spx-doc-related-layout{flex-direction:column;align-items:start;gap:10px}
.spx-doc-mission{padding:40px 0 46px}
.spx-doc-mission-quote{margin-top:22px;padding:22px 23px}
.spx-doc-intro--contact .spx-doc-contact-panel{padding:25px 23px}
.spx-doc-contact-directory{padding-top:40px}
.spx-doc-general-actions{margin-bottom:28px}
.spx-doc-intro--contact{padding:36px 0 42px}
.spx-doc-contact-panel{padding:22px}
}
@media(prefers-reduced-motion:reduce){
.spx-doc-page *,.spx-doc-page *::before,.spx-doc-page *::after{animation:none!important;transition:none!important}
}
