/* VA20Four7 v11.4 — final design-system refinement
   Visual-only layer. No copy, hierarchy, section order, product visuals or markup changes. */
:root{
  /* restrained brand palette */
  --v114-ink:#0d223a;
  --v114-copy:#4f647b;
  --v114-muted:#718298;
  --v114-line:rgba(24,55,90,.105);
  --v114-line-strong:rgba(24,55,90,.155);
  --v114-execution:#4778ed;
  --v114-control:#34ad82;
  --v114-intelligence:#776bef;
  --v114-alert:#ef6c72;

  /* three background environments */
  --v114-white:#fff;
  --v114-soft:#f5f8fc;
  --v114-soft-2:#f8fafd;
  --v114-dark:#0b1d31;

  /* disciplined radius scale */
  --v114-radius-ui:11px;
  --v114-radius-card:17px;
  --v114-radius-panel:23px;
  --v114-radius-pill:999px;

  /* restrained elevation */
  --v114-shadow-flat:0 1px 2px rgba(13,34,58,.02),0 6px 16px rgba(13,34,58,.025);
  --v114-shadow-ui:0 8px 22px rgba(13,34,58,.05);
  --v114-shadow-panel:0 18px 46px rgba(13,34,58,.065);
  --v114-shadow-overlay:0 20px 44px rgba(13,34,58,.10),0 44px 90px rgba(13,34,58,.08);

  /* one motion language */
  --v114-ease:cubic-bezier(.22,1,.36,1);
  --v114-ui:200ms;
  --v114-component:300ms;
}

/* -------------------------------------------------------------------------
   Typography: more editorial, less compressed, better small-text legibility
   ------------------------------------------------------------------------- */
body{color:var(--v114-ink)!important}
body :is(p,li){color:var(--v114-copy)!important}
body h1{letter-spacing:-.045em!important;font-weight:600!important}
body h2{letter-spacing:-.035em!important;font-weight:600!important}
body h3{letter-spacing:-.020em!important;font-weight:600!important}
body h4,body h5,body h6{letter-spacing:-.012em!important;font-weight:600!important}
body strong,body b{font-weight:600}

/* keep small UI readable without changing wording */
.eyebrow,
:where(.home970-panel-kicker,.home990-kicker,.home1010-kicker,.va102-kicker,.va103-kicker,.va104-kicker,.va110-kicker),
:where(.home970-step-top em,.home990-status,.home1010-node small,.va102-step-label,.va103-step-label,.va104-mini-label,.va110-label){
  font-size:11px!important;
  line-height:1.2!important;
}

/* pills/eyebrows: editorial, not ornamental */
.eyebrow,
:where(.home970-panel-kicker,.home990-kicker,.home1010-kicker,.va102-kicker,.va103-kicker,.va104-kicker,.va110-kicker){
  min-height:28px;
  padding:6px 10px!important;
  border-radius:var(--v114-radius-pill)!important;
  background:#f4f7fb!important;
  border:1px solid rgba(71,120,237,.10)!important;
  box-shadow:none!important;
  color:#496b96!important;
}

/* section/chapter number badges stay subtle */
:where(.home840-chapter-no,.home970-owner-title>.home840-chapter-no,.home940-label>span){
  border-radius:var(--v114-radius-pill)!important;
  background:#eef4ff!important;
  color:#355d9a!important;
  border:1px solid rgba(71,120,237,.10)!important;
  box-shadow:none!important;
}

/* -------------------------------------------------------------------------
   Surface system: fewer radii, quieter informational cards, deeper product UI
   ------------------------------------------------------------------------- */
:where(
  .home940-problem-signals article,.home840-diff-grid article,.home840-start-steps article,
  .va102-task-grid article,.va102-outcome-grid article,.va102-audience-card-grid article,.va102-control-grid article,
  .va104-principle-grid article,.va104-career-value-grid article,.va104-benefit-grid article,.va104-playbook-grid article,
  .va110-factor-grid article,.va110-capability-list article,.va110-cx-signals article,.va104-resource-card
){
  border-radius:var(--v114-radius-card)!important;
  border-color:var(--v114-line)!important;
  background:#fff!important;
  box-shadow:var(--v114-shadow-flat)!important;
}

:where(
  .home940-pressure-board,.home970-owner-panel,.home990-shell,.home1010-stack-visual,.home100-proof-stage,.home840-form-card,
  .va102-service-console,.va102-audience-hero-visual,.va102-orchestration-board,.va102-intelligence-board,
  .va103-audit-form-card,.va103-audit-board,.va103-diagnostic-shell,
  .va104-model-shell,.va104-mini-dashboard,.va104-resource-feature-shell,
  .va110-platform-shell,.va110-support-demo,.va110-pricing-final-shell,
  .contact-dialog,.contact-form-wrap,.contact-card
){
  border-radius:var(--v114-radius-panel)!important;
  border-color:var(--v114-line)!important;
  box-shadow:var(--v114-shadow-panel)!important;
}

/* Nested product surfaces use tonal hierarchy instead of extra shadow */
:where(
  .home990-shell,.home1010-stack-visual,.va102-service-console,.va102-orchestration-board,
  .va102-intelligence-board,.va110-platform-shell,.va110-support-demo
){
  background:#fff!important;
  box-shadow:var(--v114-shadow-panel),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
:where(
  .home990-shell article,.home990-shell [class*="card"],.home1010-stack-visual [class*="node"],
  .va102-service-console article,.va102-orchestration-board article,.va102-intelligence-board article,
  .va110-platform-shell article,.va110-support-demo article
){
  box-shadow:none!important;
}

/* -------------------------------------------------------------------------
   Backgrounds: simplify palette and reserve gradients for key moments only
   ------------------------------------------------------------------------- */
:where(.home970-owners,.home1010-stack,.va102-soft-section,.va104-soft-section,.tone-section){
  background:var(--v114-soft)!important;
  background-image:none!important;
}

/* dark feature moments: one restrained light source */
.va247-dark-surface,
.home840-model,
:where(.va110-dark,.va102-dark-section){
  background-color:var(--v114-dark)!important;
  background-image:radial-gradient(circle at 78% 14%,rgba(119,107,239,.10),transparent 31%),linear-gradient(135deg,#09192a 0%,#0d253d 100%)!important;
}

/* product visuals: keep originals untouched, simplify their frame */
:where(.editorial-visual-frame,.va104-resource-feature-shell){
  background:#fff!important;
  border-color:var(--v114-line)!important;
  box-shadow:var(--v114-shadow-panel)!important;
}

/* -------------------------------------------------------------------------
   Semantic brand colors: use them as meaning, not decoration
   ------------------------------------------------------------------------- */
.execution,.step-ai,[class*="execution"]{--va-layer:var(--v114-execution)!important}
.control,.step-human,[class*="control"]{--va-layer:var(--v114-control)!important}
.intelligence,[class*="intelligence"]{--va-layer:var(--v114-intelligence)!important}

/* completion / governed states get the mint personality */
:where(.home970-flow-status,.status-good,.is-success,.is-complete){
  border-color:rgba(52,173,130,.16)!important;
  background:#f1faf6!important;
}

/* coral only for attention/exception states */
:where(.status-error,.status-warning,.is-negative,.is-exception){--va-layer:var(--v114-alert)!important}

/* -------------------------------------------------------------------------
   Header + mega menu: quieter chrome
   ------------------------------------------------------------------------- */
.nav930-header{
  background:rgba(255,255,255,.90)!important;
  border-bottom-color:rgba(13,34,58,.06)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px) saturate(128%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(128%)!important;
}
.nav930-header.is-scrolled{background:rgba(255,255,255,.95)!important;box-shadow:0 8px 24px rgba(13,34,58,.045)!important}
.nav930-panel{
  border-radius:var(--v114-radius-panel)!important;
  border-color:var(--v114-line)!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:var(--v114-shadow-overlay)!important;
  backdrop-filter:blur(18px) saturate(125%)!important;
}
.nav930-trigger,.nav930-link{transition:background var(--v114-ui) var(--v114-ease),color var(--v114-ui) var(--v114-ease)!important}

/* -------------------------------------------------------------------------
   Buttons: surface quality, not heavy drop shadow
   ------------------------------------------------------------------------- */
:where(.btn,.contact-submit,.nav930-cta,.footer-contact-cta){
  border-radius:var(--v114-radius-ui)!important;
  background:#102a45!important;
  border-color:#102a45!important;
  box-shadow:0 4px 12px rgba(13,34,58,.10),inset 0 1px 0 rgba(255,255,255,.08)!important;
  transition:transform var(--v114-ui) var(--v114-ease),background var(--v114-ui) var(--v114-ease),border-color var(--v114-ui) var(--v114-ease),box-shadow var(--v114-ui) var(--v114-ease)!important;
}
@media(hover:hover) and (pointer:fine){
  :where(.btn,.contact-submit,.nav930-cta,.footer-contact-cta):hover{
    transform:translateY(-1px)!important;
    background:#173754!important;
    box-shadow:0 7px 16px rgba(13,34,58,.13),inset 0 1px 0 rgba(255,255,255,.10)!important;
  }
}
.btn.secondary{
  background:#fff!important;
  color:var(--v114-ink)!important;
  border-color:var(--v114-line-strong)!important;
  box-shadow:var(--v114-shadow-flat)!important;
}
@media(hover:hover) and (pointer:fine){
  .btn.secondary:hover{background:#f9fbfd!important;border-color:rgba(71,120,237,.20)!important;box-shadow:var(--v114-shadow-ui)!important}
}

/* -------------------------------------------------------------------------
   Cards and links: clickable vs informational becomes obvious
   ------------------------------------------------------------------------- */
@media(hover:hover) and (pointer:fine){
  :where(
    a.va104-resource-card,.va110-capability-list a,.service-showcase-card[href],
    .va102-task-grid a,.va102-audience-card-grid a
  ){
    transition:border-color var(--v114-component) var(--v114-ease),background var(--v114-component) var(--v114-ease),box-shadow var(--v114-component) var(--v114-ease)!important;
  }
  :where(
    a.va104-resource-card,.va110-capability-list a,.service-showcase-card[href],
    .va102-task-grid a,.va102-audience-card-grid a
  ):hover{
    transform:none!important;
    border-color:rgba(71,120,237,.20)!important;
    background:#fbfdff!important;
    box-shadow:var(--v114-shadow-ui)!important;
  }
  /* informational tiles should not pretend to be buttons */
  :where(.home840-diff-grid article,.home940-problem-signals article,.va104-principle-grid article):hover{
    transform:none!important;
  }
}

/* -------------------------------------------------------------------------
   Forms: flatter and clearer
   ------------------------------------------------------------------------- */
:where(input,select,textarea){
  border-radius:var(--v114-radius-ui)!important;
  background:#fff!important;
  border-color:rgba(24,55,90,.14)!important;
  box-shadow:none!important;
  transition:border-color var(--v114-ui) var(--v114-ease),box-shadow var(--v114-ui) var(--v114-ease),background var(--v114-ui) var(--v114-ease)!important;
}
:where(input,select,textarea):hover{border-color:rgba(24,55,90,.22)!important}
:where(input,select,textarea):focus{
  background:#fff!important;
  border-color:rgba(71,120,237,.50)!important;
  box-shadow:0 0 0 3px rgba(71,120,237,.09)!important;
}

/* -------------------------------------------------------------------------
   Pricing: calm decision surface
   ------------------------------------------------------------------------- */
.va110-pricing-grid>article{
  border-radius:var(--v114-radius-card)!important;
  background:#fff!important;
  box-shadow:var(--v114-shadow-flat)!important;
}
.va110-pricing-grid>article.featured{
  border-color:rgba(71,120,237,.28)!important;
  background:#fbfdff!important;
  box-shadow:var(--v114-shadow-ui)!important;
}

/* -------------------------------------------------------------------------
   Footer: preserve compact structure, simplify depth
   ------------------------------------------------------------------------- */
#va247-theme-footer .footer-premium-top{
  background-image:radial-gradient(circle at 82% 0%,rgba(119,107,239,.09),transparent 26%),linear-gradient(125deg,#091827 0%,#10283f 100%)!important;
  box-shadow:0 12px 28px rgba(13,34,58,.07)!important;
}
#va247-theme-footer .footer-premium-action,#va247-theme-footer .footer-contact-cta{box-shadow:none!important}

/* -------------------------------------------------------------------------
   Motion language: reduce gratuitous lift, keep clear UI response
   ------------------------------------------------------------------------- */
:where(.btn,.nav930-cta,.footer-contact-cta,.nav930-trigger,.nav930-link,.nav930-panel,
.va104-resource-card,.service-showcase-card,.va110-capability-list article){
  transition-timing-function:var(--v114-ease)!important;
}

/* -------------------------------------------------------------------------
   Mobile: flatter, clearer, less shadow-heavy
   ------------------------------------------------------------------------- */
@media(max-width:780px){
  body h1{letter-spacing:-.038em!important}
  body h2{letter-spacing:-.030em!important}
  body h3{letter-spacing:-.016em!important}

  :where(
    .home940-pressure-board,.home970-owner-panel,.home990-shell,.home1010-stack-visual,.home100-proof-stage,
    .va102-service-console,.va102-audience-hero-visual,.va102-orchestration-board,.va102-intelligence-board,
    .va103-audit-form-card,.va103-audit-board,.va104-model-shell,.va104-mini-dashboard,
    .va110-platform-shell,.va110-support-demo,.contact-dialog,.contact-form-wrap
  ){
    box-shadow:var(--v114-shadow-ui)!important;
  }
  :where(
    .home940-problem-signals article,.home840-diff-grid article,.home840-start-steps article,
    .va102-task-grid article,.va102-outcome-grid article,.va102-audience-card-grid article,.va102-control-grid article,
    .va104-principle-grid article,.va104-career-value-grid article,.va104-benefit-grid article,.va104-resource-card
  ){
    box-shadow:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  :where(.btn,.contact-submit,.nav930-cta,.footer-contact-cta):hover{transform:none!important}
}
