/* ORBIT new-site side pages — aligned to approved Plan B landing. */
@font-face{font-family:Manrope;src:url('fonts/manrope-latin-variable.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--pbp-ink:#10172e;--pbp-muted:#53627b;--pbp-line:#e2e7ef;--pbp-soft:#f6f8fb;--pbp-orange:#fb410d;--pbp-dark:#090d16;--pbp-blue:#2e60ff;--pbp-radius:18px;--pbp-shell:1180px;--pbp-gutter:clamp(20px,4vw,56px)}
body.pb-site-page{margin:0;background:#fff;color:var(--pbp-ink);font-family:Manrope,system-ui,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.pb-site-page *{box-sizing:border-box}
body.pb-site-page img{max-width:100%;height:auto}
body.pb-site-page h1,body.pb-site-page h2,body.pb-site-page h3,body.pb-site-page h4{font-family:Manrope,system-ui,sans-serif;color:var(--pbp-ink);letter-spacing:-.04em;line-height:1.08}
body.pb-site-page p{color:var(--pbp-muted)}
body.pb-site-page a{color:inherit}
body.pb-site-page main{overflow:hidden}
body.pb-site-page :is(.oc-shell,.method-wrap,.library-shell,.oa-hero,.oa-offer,.oa-question-layout,.oa-investigates>.oc-shell,.oa-receive>.oc-shell,.oa-plain-section>.oc-shell,.oa-final>.oc-shell,.wo-hero-grid,.wo-section>.oc-shell,.wo-quote-inner,.wo-final>.oc-shell,.sa-hero-grid,.sa-premise-grid,.sa-walkthrough-grid,.sa-reasoning>.oc-shell,.sa-boundary-grid,.sa-delivery>.oc-shell,.sa-faq>.oc-shell,.sa-final>.oc-shell,.library-hub-hero-grid,.library-hub-decision-area>.library-shell,.library-hub-featured>.library-shell,.library-hub-latest>.library-shell,.library-hub-cta-strip>.library-shell,.library-hub-archive>.library-shell,.library-editorial-section>.library-shell,.contact-main,.legal-hero,.content-shell){width:min(var(--pbp-shell),calc(100% - 2*var(--pbp-gutter)));margin-left:auto;margin-right:auto}
body.pb-site-page :is(.oa-hero,.method-hero,.wo-hero,.sa-hero,.library-hub-hero,.oc-hero,.legal-hero){padding:96px 0 74px;background:#fff!important}
body.pb-site-page :is(.oa-hero h1,.method-hero h1,.wo-hero h1,.sa-hero h1,.library-hub-hero h1,.oc-hero h1,.contact-copy h1,.legal-hero h1){font-size:clamp(3rem,1.7rem + 3.5vw,5.5rem)!important;font-weight:690!important;line-height:.99!important;letter-spacing:-.06em!important;max-width:13ch;margin:0;color:var(--pbp-ink)!important}
body.pb-site-page :is(.oa-hero p,.method-hero p,.wo-hero p,.sa-hero p,.library-hub-hero p,.oc-hero p,.contact-copy>p,.legal-hero p){font-size:clamp(1.05rem,.98rem + .25vw,1.25rem)!important;line-height:1.6!important;color:var(--pbp-muted)!important;max-width:58ch}
body.pb-site-page main>section:not(:first-child){padding-top:clamp(64px,7vw,96px);padding-bottom:clamp(64px,7vw,96px)}
body.pb-site-page :is(.oa-question-section,.oa-receive,.oa-fit-section,.wo-tools,.wo-paying,.sa-premise,.sa-boundary,.library-hub-decision-area,.library-hub-latest,.oc-band:nth-of-type(even)){background:var(--pbp-soft)!important}
body.pb-site-page :is(.oa-page,.wo-page,.sa-page,.methodology-page,.library-page,.contact-page){background:#fff!important}
body.pb-site-page :is(.oa-page h2,.methodology-page h2,.wo-page h2,.sa-page h2,.library-page h2,.oc-body h2,.contact-main h2,.legal-copy h2,.content-shell h2){font-size:clamp(2rem,1.45rem + 1.5vw,3.05rem)!important;font-weight:660!important;letter-spacing:-.05em!important;line-height:1.05!important;color:var(--pbp-ink)!important}
body.pb-site-page :is(.oa-page h3,.methodology-page h3,.wo-page h3,.sa-page h3,.library-page h3,.oc-body h3,.contact-main h3,.content-shell h3){font-weight:640!important;color:var(--pbp-ink)!important;letter-spacing:-.025em!important}
body.pb-site-page :is(.oa-page p,.methodology-page p,.wo-page p,.sa-page p,.library-page p,.oc-body p,.contact-main p,.content-shell p,.content-shell li){color:var(--pbp-muted);font-weight:430}
body.pb-site-page :is(.oc-primary,.method-primary-cta,.method-header-cta,.sa-primary,.oa-primary,.wo-primary,.library-hub-cta-button,.contact-submit,.library-article-cta-inner>a,.library-sidebar-cta>a,.orbit-primary-action){background:var(--pbp-orange)!important;border-color:var(--pbp-orange)!important;color:#fff!important;border-radius:8px!important;font-family:Manrope,system-ui,sans-serif!important;font-weight:680!important;box-shadow:none!important;text-decoration:none!important}
body.pb-site-page :is(.oc-secondary,.sa-text-link,.method-text-link){color:var(--pbp-ink)!important;font-weight:600!important}
body.pb-site-page :is(.oa-deliverable-card,.wo-compare-card,.wo-work-card,.wo-paying-item,.sa-report-scene,.library-hub-area-card,.library-hub-feature-card,.library-hub-list-card,.library-story-card,.library-compact-card,.oc-scope-item,.contact-form-shell,.contact-direct-action){border:1px solid var(--pbp-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important}
body.pb-site-page :is(.oa-deliverable-card,.wo-compare-card,.wo-work-card,.wo-paying-item,.library-hub-area-card,.library-hub-list-card,.oc-scope-item){transition:transform .18s ease,border-color .18s ease}
body.pb-site-page :is(.oa-deliverable-card,.wo-compare-card,.wo-work-card,.wo-paying-item,.library-hub-area-card,.library-hub-list-card,.oc-scope-item):hover{transform:translateY(-2px);border-color:#ccd5e2!important}
body.pb-site-page :is(.oa-offer-wrap,.oa-offer){background:transparent!important}
body.pb-site-page .oa-offer{border:1px solid var(--pbp-line)!important;border-radius:18px!important;box-shadow:none!important}
body.pb-site-page .oa-price{color:var(--pbp-ink)!important}
body.pb-site-page :is(.oa-line-icon,.av-accent,.method-core-dot,.process-index,.wo-tool-pill,.library-hub-kicker,.contact-kicker,.oc-eyebrow){color:var(--pbp-orange)!important}
body.pb-site-page :is(.method-cloud-core,.wo-decision-card,.sa-stage-page-front){box-shadow:0 20px 60px rgba(17,24,39,.08)!important}
body.pb-site-page :is(.method-focus-section,.method-process-section,.evidence-section,.reasoning-section,.limits-section,.oa-investigates,.oa-plain-section,.wo-section,.sa-walkthrough,.sa-reasoning,.sa-delivery,.sa-faq,.oc-section){border-top:1px solid rgba(226,231,239,.8)}
body.pb-site-page .oa-final,body.pb-site-page .wo-final,body.pb-site-page .sa-final,body.pb-site-page .oc-final{background:var(--pbp-dark)!important;color:#fff!important}
body.pb-site-page :is(.oa-final h2,.wo-final h2,.sa-final h2,.oc-final h2){color:#fff!important}
body.pb-site-page :is(.oa-final p,.wo-final p,.sa-final p,.oc-final p){color:#b8c1d0!important}
/* contact */
body.pb-site-page .contact-main{display:grid!important;grid-template-columns:minmax(0,.78fr) minmax(0,1.05fr)!important;gap:clamp(42px,7vw,92px)!important;padding:90px 0 110px!important;align-items:start}
body.pb-site-page .contact-copy{padding:0!important}.contact-copy h1{max-width:9ch!important}.contact-form-shell{padding:28px!important}.contact-field label{font-weight:600!important;color:#36445b!important}.contact-field input,.contact-field textarea,.contact-field select{border:1px solid #cbd3df!important;border-radius:8px!important;box-shadow:none!important;font-family:Manrope,system-ui,sans-serif!important}.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus{border-color:var(--pbp-orange)!important;outline:2px solid rgba(251,65,13,.16)!important}
/* legal */
body.pb-site-page .legal-hero{width:min(820px,calc(100% - 2*var(--pbp-gutter)));padding-left:0!important;padding-right:0!important}.content-shell{max-width:820px!important;padding:24px 0 100px!important}.content-shell section,.legal-section{padding:26px 0!important;border-top:1px solid var(--pbp-line)!important}.content-shell h2{font-size:1.55rem!important;line-height:1.2!important}.content-shell p,.content-shell li{font-size:.98rem;line-height:1.78}
/* library hub */
body.pb-site-page .library-hub-hero-grid{gap:52px!important}.library-hub-search{border-radius:10px!important;border-color:#cfd7e3!important;box-shadow:none!important}.library-hub-area-grid,.library-hub-featured-grid,.library-hub-latest-grid,.library-compact-grid{gap:18px!important}.library-hub-area-card,.library-hub-feature-card,.library-hub-list-card,.library-story-card,.library-compact-card{overflow:hidden}.library-hub-tag,.library-hub-list-tag{color:var(--pbp-blue)!important;background:#edf3ff!important;border-radius:999px!important}
/* article pages */
body.pb-site-page.library-article-page{background:#fff!important}.library-article-main{padding-top:44px!important}.library-article-layout-shell{width:min(1180px,calc(100% - 2*var(--pbp-gutter)))!important;margin:auto!important;gap:52px!important}.library-article-sidebar{top:108px!important}.library-sidebar-cta{border:1px solid var(--pbp-line)!important;border-radius:15px!important;background:var(--pbp-soft)!important;box-shadow:none!important}.library-article-header h1{font-size:clamp(2.7rem,1.75rem + 2.5vw,4.6rem)!important;font-weight:680!important;line-height:1.02!important;letter-spacing:-.055em!important;color:var(--pbp-ink)!important}.library-article-dek,.library-opening-thesis{color:#46556e!important}.library-article-section h2{font-size:clamp(1.8rem,1.45rem + 1vw,2.55rem)!important;font-weight:650!important;color:var(--pbp-ink)!important}.library-article-reading-shell p,.library-article-reading-shell li{font-size:1.02rem!important;line-height:1.8!important;color:#4f5f78!important}.library-visual-block,.library-article-evidence,.library-article-note-stage,.library-research-details{border-radius:16px!important;border:1px solid var(--pbp-line)!important;box-shadow:none!important}.library-article-cta-band{background:var(--pbp-dark)!important}.library-article-cta-band h2{color:#fff!important}.library-article-cta-band p{color:#b7c0cf!important}.library-article-cta-inner>a{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:12px 18px!important;min-height:48px!important}
/* shared compact footer */
.pb-site-footer{background:var(--pbp-dark);color:#d4d8de;padding:22px 0 18px}
.pb-site-footer-shell{width:min(var(--pbp-shell),calc(100% - 2*var(--pbp-gutter)));margin:auto}
.pb-site-footer-main{display:flex;align-items:center;justify-content:space-between;gap:24px}
.pb-site-footer-brand{width:120px;flex:none}
.pb-site-footer-brand img{display:block;width:100%}
.pb-site-footer-nav{display:flex;flex-wrap:wrap;gap:2px 22px}
.pb-site-footer-nav a,.pb-site-footer-legal a{display:flex;align-items:center;min-height:32px;font-size:.8125rem;color:#c1c7d0;text-decoration:none}
.pb-site-footer-nav a:hover,.pb-site-footer-legal a:hover{color:var(--pbp-orange);text-decoration:none}
.pb-site-footer-divider{height:1px;background:rgba(255,255,255,.055);margin:8px 0}
.pb-site-footer-social-row{display:flex;justify-content:flex-end}
.pb-site-footer-social{display:flex;align-items:center;gap:14px}
.pb-site-footer-social p{font-size:.8125rem;line-height:1.3;color:#acb3bd;margin:0}
.pb-site-footer-social-links{display:flex;gap:7px}
.pb-site-footer-social-links a{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#c1c7d0}
.pb-site-footer-social-links a:hover{border-color:rgba(251,65,13,.45);color:var(--pbp-orange)}
.pb-site-footer-social-links svg{width:16px;height:16px}
.pb-site-footer-legal{display:flex;justify-content:space-between;gap:16px;align-items:center;color:#acb3bd;font-size:.75rem;line-height:1.4}
.pb-site-footer-legal p{margin:0;color:#acb3bd}
.pb-site-footer-legal-links{display:flex;gap:24px}
@media(max-width:980px){.contact-main{grid-template-columns:1fr!important}.library-article-layout-shell{display:block!important}.library-article-sidebar{display:none!important}}
@media(max-width:700px){body.pb-site-page :is(.oa-hero,.method-hero,.wo-hero,.sa-hero,.library-hub-hero,.oc-hero,.legal-hero){padding:66px 0 50px}body.pb-site-page :is(.oa-hero h1,.method-hero h1,.wo-hero h1,.sa-hero h1,.library-hub-hero h1,.oc-hero h1,.contact-copy h1,.legal-hero h1){font-size:clamp(2.55rem,10vw,4rem)!important}.pb-site-footer-main,.pb-site-footer-legal{align-items:flex-start;flex-direction:column}.pb-site-footer-social-row{justify-content:flex-start}.pb-site-footer-nav{gap:0 20px}.pb-site-footer{padding:20px 0 16px}.pb-site-footer-divider{margin:8px 0}.contact-main{padding-top:62px!important}.contact-form-shell{padding:20px!important}}

/* ==========================================================
   ORBIT CONTACT — MOBILE STACK FIX
   The base contact grid is !important, so the responsive rule
   must match its specificity. Keep the phone page single-column.
   ========================================================== */
@media (max-width:980px){
  body.pb-site-page.pb-page-contact .contact-main{
    grid-template-columns:minmax(0,1fr) !important;
    gap:38px !important;
  }
}

@media (max-width:700px){
  body.pb-site-page.pb-page-contact .contact-main{
    width:calc(100% - 32px) !important;
    padding:72px 0 64px !important;
    gap:34px !important;
  }

  body.pb-site-page.pb-page-contact .contact-copy,
  body.pb-site-page.pb-page-contact .contact-form-shell{
    width:100% !important;
    min-width:0 !important;
  }

  body.pb-site-page.pb-page-contact .contact-copy h1{
    max-width:8ch !important;
  }

  body.pb-site-page.pb-page-contact .contact-lede{
    max-width:32rem !important;
  }

  body.pb-site-page.pb-page-contact .contact-direct{
    margin-top:28px !important;
  }

  body.pb-site-page.pb-page-contact .contact-direct-actions{
    width:100% !important;
    max-width:none !important;
  }

  body.pb-site-page.pb-page-contact .contact-direct-action{
    width:100% !important;
    grid-template-columns:40px minmax(0,1fr) 18px !important;
  }

  body.pb-site-page.pb-page-contact .contact-direct-copy{
    min-width:0 !important;
  }

  body.pb-site-page.pb-page-contact .contact-direct-copy strong{
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }

  body.pb-site-page.pb-page-contact .contact-form-shell{
    padding:22px 18px !important;
  }

  body.pb-site-page.pb-page-contact .contact-form-grid{
    grid-template-columns:minmax(0,1fr) !important;
  }

  body.pb-site-page.pb-page-contact .contact-field,
  body.pb-site-page.pb-page-contact .contact-field input,
  body.pb-site-page.pb-page-contact .contact-field textarea{
    min-width:0 !important;
  }
}

@media (max-width:430px){
  body.pb-site-page.pb-page-contact .contact-main{
    width:calc(100% - 24px) !important;
  }

  body.pb-site-page.pb-page-contact .contact-form-shell{
    padding:20px 16px !important;
  }
}
