/* SYNC v1.33.0 — approved multi-surface colour architecture. */
:root{
  /* Raw approved palette */
  --sync-orange:#FF7800;
  --sync-dark-blue:#160E53;
  --sync-blue:#261C6A;
  --sync-purple:#4E22D0;
  --sync-white:#FFFFFF;
  --sync-cyan:#11DFEF;
  --sync-green:#43ED9C;
  --sync-coral:#FF4672;
  --sync-yellow:#FADB4B;
  --sync-neutral-050:#F8F8FC;
  --sync-neutral-100:#F4F3FA;
  --sync-neutral-200:#E9E8F3;
  --sync-neutral-300:#D4D2E6;
  --sync-neutral-500:#A8A4C3;
  --sync-neutral-600:#7D77A6;
  --sync-neutral-700:#676096;

  /* Semantic roles */
  --color-brand:var(--sync-orange);
  --color-action:var(--sync-orange);
  --color-bg-primary:var(--sync-dark-blue);
  --color-bg-secondary:var(--sync-blue);
  --color-bg-brand:var(--sync-purple);
  --color-bg-light:var(--sync-white);
  --color-bg-soft:var(--sync-neutral-050);
  --color-text-primary:var(--sync-white);
  --color-text-secondary:var(--sync-neutral-300);
  --color-text-muted:var(--sync-neutral-500);
  --color-text-on-light:var(--sync-dark-blue);
  --color-info:var(--sync-cyan);
  --color-success:var(--sync-green);
  --color-warning:var(--sync-yellow);
  --color-error:var(--sync-coral);

  /* Compatibility aliases keep existing components on the governed system. */
  --lime:var(--sync-orange);
  --purple:var(--sync-purple);
  --purple-light:var(--sync-neutral-300);
  --surface:var(--sync-neutral-050);
  --ink:var(--sync-dark-blue);
  --muted:var(--sync-neutral-700);
  --sync-stage:var(--sync-dark-blue);
  --sync-stage-raised:var(--sync-blue);
  --sync-stage-warm:var(--sync-dark-blue);
  --sync-board-line:rgba(255,255,255,.055);
  --sync-board-bright:rgba(255,120,0,.08);
  --sync-board-violet:rgba(78,34,208,.12);
  --sync-board-cyan:rgba(255,255,255,.045);
}

html,body,body.sync-site{background:var(--sync-dark-blue);color:var(--sync-white)}

/* Solid structural surfaces replace atmospheric colour fog. */
.home-v14,.services-v2,.service-detail,.workx-page,.academy,.about-v2,.founder-v1,.contact-v2,.tools-home,.inner-page{
  background:var(--sync-dark-blue);
}
.v14-hero,.sv2-hero,.sd-hero,.workx-hero,.academy-hero,.academy-track-hero,.academy-lesson-hero,.academy-simple-hero,
.av2-hero,.fv1-hero,.contact-v2-hero,.tools-hero,.casex-hero,.inner-hero{
  background:var(--sync-dark-blue);
}
.v14-process,.v14-learn,.sv2-stage,.sv2-close,.sd-benefits,.sd-handle,.sd-faq,.workx-featured,.workx-breadth,
.academy-track-extra,.av2-principles,.av2-capabilities,.av2-note,.fv1-principles,.fv1-range,.fv1-beyond,.fv1-note,
.casex-did,.casex-work,.contact-v2-body,.tools-promise{
  background:var(--sync-blue);
}
.v14-proof,.academy-help,.academy-next-track,.av2-rhythm,.fv1-work,.casex-next{
  background:var(--sync-purple);
}

/* Deliberate light editorial chapters: color provides rhythm, not mist. */
:is(.v14-work,.v14-team,.sd-what,.sd-deliverables,.workx-library,.academy-questions,.academy-resources,
  .av2-who,.av2-people,.av2-trust,.fv1-story,.fv1-recognition,.casex-needed,.casex-result,.tools-bento){
  background:var(--sync-neutral-050);
  color:var(--sync-dark-blue);
}
:is(.v14-work,.v14-team,.sd-what,.sd-deliverables,.workx-library,.academy-questions,.academy-resources,
  .av2-who,.av2-people,.av2-trust,.fv1-story,.fv1-recognition,.casex-needed,.casex-result,.tools-bento)
  :is(h1,h2,h3,h4,strong){color:var(--sync-dark-blue)!important}
:is(.v14-work,.v14-team,.sd-what,.sd-deliverables,.workx-library,.academy-questions,.academy-resources,
  .av2-who,.av2-people,.av2-trust,.fv1-story,.fv1-recognition,.casex-needed,.casex-result,.tools-bento)
  :is(p,small,li,span:not(.button *)){color:var(--sync-neutral-700)!important}
:is(.v14-work,.v14-team,.sd-what,.sd-deliverables,.workx-library,.academy-questions,.academy-resources,
  .av2-who,.av2-people,.av2-trust,.fv1-story,.fv1-recognition,.casex-needed,.casex-result,.tools-bento)
  :is(.eyebrow,.sd-label,.academy-kicker,.av2-label,.fv1-label){color:var(--sync-purple)!important}
:is(.v14-work,.v14-team,.sd-what,.sd-deliverables,.workx-library,.academy-questions,.academy-resources,
  .av2-who,.av2-people,.av2-trust,.fv1-story,.fv1-recognition,.casex-needed,.casex-result,.tools-bento) a:not(.button){
  color:var(--sync-dark-blue);
  text-decoration-color:var(--sync-orange);
}

/* Light cards and forms are exact palette surfaces; dark cards remain branded. */
.v14-team-grid article,.workx-library .workx-card>a,.academy-questions .academy-question-grid a,
.academy-resources :where(.academy-resource-grid a,.academy-resource-library a),.av2-people :where(.av2-profile,.av2-person),
.av2-trust-grid article,.tools-bento .tools-card{
  background:var(--sync-white);
  border-color:var(--sync-neutral-300);
  box-shadow:0 22px 58px rgba(22,14,83,.1),inset 0 1px var(--sync-white);
}
:where(.academy-track-card,.academy-module,.academy-guide-grid a,.quick-enquiry-form,.contact-v2-form-shell,
  .workx-filter-panel,.sd-close,.v14-close-glass,.casex-explorer){
  background:var(--sync-blue);
  border-color:rgba(255,255,255,.18);
}
.academy-resource-sheet{
  background:var(--sync-white);
  color:var(--sync-dark-blue);
  border-radius:28px;
}
.academy-resource-sheet :where(h1,h2,h3,legend,label,span){color:var(--sync-dark-blue)}
.academy-resource-sheet :where(input,textarea,td){background:var(--sync-neutral-050);color:var(--sync-dark-blue);border-color:var(--sync-neutral-300)}

/* Canonical header, navigation and dock. */
.sync-header-v18 .sync-header-glass,.mobile-dock.sync-global-dock{
  background:rgba(22,14,83,.94);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 18px 62px rgba(11,7,42,.32),inset 0 1px rgba(255,255,255,.14);
}
.sync-header-v18 a,.sync-header-v18 button,.mobile-dock a{color:var(--sync-neutral-300)}
.sync-header-v18 a:hover,.sync-header-v18 button:hover{color:var(--sync-white)}
.sync-header-v18 .is-current>a,.sync-header-v18 [aria-current="page"],.mobile-dock a[aria-current="page"]{color:var(--sync-orange)}
.sync-header-v18 .is-current>a:after,.sync-header-v18 [aria-current="page"]:after{background:var(--sync-orange)}

/* Actions: dark-blue text on orange passes where white does not. */
:is(.button.button-lime,.button-primary,.sync-button-primary,.tools-action-primary,.wb-primary){
  background:var(--sync-orange)!important;
  border-color:var(--sync-orange)!important;
  color:var(--sync-dark-blue)!important;
  box-shadow:0 14px 34px rgba(22,14,83,.2),inset 0 1px rgba(255,255,255,.28)!important;
}
:is(.button.button-glass,.button-secondary,.sync-button-secondary){
  background:var(--sync-blue)!important;
  border-color:rgba(255,255,255,.2)!important;
  color:var(--sync-white)!important;
}
:where(.button,a,button,input,textarea,select,[tabindex]):focus-visible{
  outline:3px solid var(--sync-orange)!important;
  outline-offset:3px;
}

/* Forms use semantic states and solid fields. */
:where(.contact-v2-field-grid input,.contact-v2-message textarea,.contact-v2-detail input,.field input,.field textarea,.field select){
  background:var(--sync-dark-blue)!important;
  border-color:rgba(212,210,230,.38)!important;
  color:var(--sync-white)!important;
}
:where(input,textarea)::placeholder{color:var(--sync-neutral-500)!important}
:where(.contact-v2-field-grid input,.contact-v2-message textarea,.contact-v2-detail input,.field input,.field textarea,.field select):focus{
  border-color:var(--sync-orange)!important;
  box-shadow:0 0 0 3px rgba(255,120,0,.22)!important;
}
.contact-v2-success,.is-success,[data-state="success"]{--state-color:var(--sync-green)}
.contact-v2-failure,.is-error,[data-state="error"]{--state-color:var(--sync-coral)}
.is-warning,[data-state="warning"]{--state-color:var(--sync-yellow)}

/* Context accents: one approved dominant colour per service composition. */
.sv2-scene--website,.sd-scene--website{--topic:var(--sync-blue)}
.sv2-scene--commerce,.sd-scene--commerce{--topic:var(--sync-purple)}
.sv2-scene--seo,.sd-scene--seo{--topic:var(--sync-cyan)}
.sv2-scene--local,.sd-scene--local{--topic:var(--sync-green)}
.sv2-scene--google-ads,.sd-scene--google-ads{--topic:var(--sync-orange)}
.sv2-scene--meta,.sd-scene--meta{--topic:var(--sync-coral)}
.sv2-scene--marketing,.sd-scene--marketing{--topic:var(--sync-purple)}
.sv2-scene--social,.sd-scene--social{--topic:var(--sync-blue)}
.sv2-scene--branding,.sd-scene--branding{--topic:var(--sync-purple)}
.sv2-scene--graphic,.sd-scene--graphic{--topic:var(--sync-purple)}
.sv2-scene--content,.sd-scene--content{--topic:var(--sync-orange)}
.sv2-scene--automation,.sd-scene--automation{--topic:var(--sync-cyan)}
.sv2-scene--audit,.sd-scene--audit{--topic:var(--sync-blue)}
.sv2-scene--consultation,.sd-scene--consultation{--topic:var(--sync-orange)}
:where(.sv2-scene,.sd-scene) :where(.sv2-ui i,.sd-node i){background:var(--topic,var(--sync-purple));box-shadow:0 0 12px color-mix(in srgb,var(--topic,var(--sync-purple)) 38%,transparent)}

/* Rare orange statement closes a journey without becoming a site-wide field. */
.av2-close,.fv1-connect,.casex-close{
  background:var(--sync-orange);
  color:var(--sync-dark-blue);
}
:is(.av2-close,.fv1-connect,.casex-close) :is(h2,p,.eyebrow,.av2-label,.fv1-label){color:var(--sync-dark-blue)!important}
:is(.av2-close,.fv1-connect,.casex-close) .button.button-lime{
  background:var(--sync-dark-blue)!important;
  border-color:var(--sync-dark-blue)!important;
  color:var(--sync-white)!important;
}

/* Tools and Whiteboard keep structure/function; only their chrome changes. */
.tools-home,.whiteboard-app,.wb-shell{--tools-accent:var(--sync-orange);--wb-accent:var(--sync-orange)}
.whiteboard-app,.wb-shell,.wb-topbar,.wb-rail,.wb-panel{background-color:var(--sync-dark-blue)}
.tools-card [data-preview],.tools-preview{border-color:var(--sync-neutral-300)}

/* Footer is a solid final anchor with no multicolour atmosphere. */
.sync-footer-calm,.home .site-footer.sync-footer-calm{
  background:var(--sync-dark-blue);
  color:var(--sync-white);
}
.sync-footer-calm a:hover{color:var(--sync-orange)}

/* No large-scale contextual compositing; local component light remains. */
.v14-ambient,.sv2-stage:before,.sv2-scene:before,.sv2-scene-glow,.sd-scene:before,.academy-visual__glow,
.sync-services-hero-art:before,.sync-work-hero-art:before,.sync-academy-hero-art:before,.sync-people-scene .sps-light,
.sync-explanatory-visual:after,.contact-intro:after,.quick-enquiry:before,.v15-project:before,.workx-visual:after,
.v15-proof-interface:before,.fv1-range-system:before{display:none!important}

@media(max-width:768px){
  .home-v14,.services-v2,.service-detail,.workx-page,.academy,.about-v2,.founder-v1,.contact-v2,.tools-home,.inner-page{
    background:var(--sync-dark-blue);
  }
  :where(.sync-header-v18 .sync-header-glass,.mobile-dock.sync-global-dock,.academy-map,.academy-visual,.sv2-ui,.sv2-summary,.sd-node,.contact-v2-form-shell){
    -webkit-backdrop-filter:blur(12px) saturate(105%);
    backdrop-filter:blur(12px) saturate(105%);
  }
}

@media(prefers-reduced-motion:reduce){
  .academy-visual__glow{animation:none!important}
}
