/* WHS Apps ONE v7.6 Final Polish QA
   Controlled final layer only: global consistency, contrast, proportion and responsive corrections.
   Approved v7.5 layouts/content remain controlling. */

/* Keep primary interaction fills within the approved WHS Apps ONE palette and improve white-text contrast. */
.v75-site{
  --v75-green-strong:var(--v75-deep);
}

/* Header/nav: one global type and CTA geometry across every page, including legacy pricing body classes. */
.v75-site .v71-main-nav > a,
.v75-site .v71-main-nav > .v71-mega > summary,
.v75-site.v68-premium-site .v71-main-nav > a,
.v75-site.v68-premium-site .v71-main-nav > .v71-mega > summary{
  font-size:13px!important;
  font-weight:760!important;
  line-height:19.5px!important;
  letter-spacing:-.015em!important;
}
.v75-site .v71-main-nav .nav-cta,
.v75-site.v68-premium-site .v71-main-nav .nav-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  height:46px!important;
  padding:0 19px!important;
  line-height:1!important;
  font-size:13px!important;
  font-weight:760!important;
  text-align:center!important;
  white-space:nowrap!important;
  background:var(--v75-deep)!important;
  color:#fff!important;
}

/* Readable, consistent breadcrumb treatment on light page surfaces. */
.v75-site .v71-breadcrumb,
.v75-site .v71-breadcrumb a,
.v75-site .v71-breadcrumb span{
  color:var(--v75-deep)!important;
}
/* Preserve intentional light breadcrumb treatment on the dark Work Clearance hero. */
.v75-site.v71-page-work-clearance .v71-hero-clearance .v71-breadcrumb,
.v75-site.v71-page-work-clearance .v71-hero-clearance .v71-breadcrumb a,
.v75-site.v71-page-work-clearance .v71-hero-clearance .v71-breadcrumb span{
  color:#D7E2D9!important;
}

/* Dark-section intro copy was being overridden by a later muted-text rule. */
.v75-site .v75-section.v71-dark:not(.outputs-section)
:is(.section-head,.subpage-head,.topic-explainer-head) > p{
  color:#C8D5CB!important;
}
.v75-site .v75-section.v71-dark:not(.outputs-section)
:is(.section-head,.subpage-head,.topic-explainer-head)
:is(.eyebrow-simple,.v71-eyebrow,small){
  color:#B7DD99!important;
}

/* The outputs section is intentionally a light information surface: use the established pale green. */
.v75-site .outputs-section,
.v75-site .outputs-section.v71-dark{
  background:var(--v75-pale)!important;
}

/* FAQ topic navigation: compact content should not stretch into ten full-width cards. */
.v75-site.v71-page-faq .faq-topic-nav{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
.v75-site.v71-page-faq .faq-topic-nav > a{
  width:auto!important;
  min-width:0!important;
  min-height:88px!important;
  height:auto!important;
  padding:18px 18px!important;
  align-content:center!important;
}

/* Protect consistent button centring wherever primary actions repeat. */
.v75-site .btn.primary,
.v75-site button[type="submit"],
.v75-site input[type="submit"]{
  background:var(--v75-deep)!important;
  color:#fff!important;
}

@media (max-width:980px){
  .v75-site.v71-page-faq .faq-topic-nav{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:820px){
  .v75-site .v71-main-nav > a,
  .v75-site .v71-main-nav > .v71-mega > summary,
  .v75-site.v68-premium-site .v71-main-nav > a,
  .v75-site.v68-premium-site .v71-main-nav > .v71-mega > summary{
    font-size:13px!important;
    line-height:19.5px!important;
  }
  .v75-site .v71-main-nav .nav-cta,
  .v75-site.v68-premium-site .v71-main-nav .nav-cta{
    width:100%!important;
    min-height:46px!important;
    height:46px!important;
    padding:0 16px!important;
  }
}

@media (max-width:560px){
  .v75-site.v71-page-faq .faq-topic-nav{
    grid-template-columns:1fr!important;
  }
  .v75-site.v71-page-faq .faq-topic-nav > a{
    min-height:68px!important;
    padding:14px 16px!important;
  }
}

/* Final header geometry: pricing carried a legacy 74px nav-wrap while the rest of v7.5 used 96px. */
@media (min-width:821px){
  .v75-site .v71-nav-wrap,
  .v75-site.v68-premium-site .v71-nav-wrap{
    min-height:96px!important;
    height:96px!important;
  }
}
.v75-site .v71-main-nav .nav-cta,
.v75-site.v68-premium-site .v71-main-nav .nav-cta{
  line-height:19.5px!important;
}
@media (max-width:820px){
  .v75-site .v71-nav-wrap,
  .v75-site.v68-premium-site .v71-nav-wrap{
    min-height:72px!important;
    height:72px!important;
  }
  .v75-site .v71-main-nav > .v71-mega > summary,
  .v75-site.v68-premium-site .v71-main-nav > .v71-mega > summary{
    padding:12px 8px!important;
  }
}

/* Final contrast corrections found in rendered page QA. These restore the intended specialised component treatment after broad v7.5 card rules. */
.v75-site .v71-dark .ask-one-my-work-rule strong{
  color:var(--v75-ink)!important;
}
.v75-site .v71-dark .ask-one-my-work-rule span{
  color:var(--v75-muted)!important;
}

/* Relationship/host cards are intentional dark visual anchors, not ordinary light cards. */
.v75-site .v71-white .relationship-host,
.v75-site .v71-white .mixed-host{
  background:var(--v75-dark)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.11)!important;
}
.v75-site .relationship-host :is(strong,h3),
.v75-site .mixed-host :is(strong,h3){
  color:#fff!important;
}
.v75-site .relationship-host span,
.v75-site .mixed-host span{
  color:#DCEBD7!important;
}
.v75-site .relationship-host small,
.v75-site .mixed-host small{
  color:#B7DD99!important;
}
.v75-site .v71-white .relationship-result{
  background:var(--v75-deep)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.11)!important;
}
.v75-site .relationship-result b{
  color:#DDF2CC!important;
}
.v75-site .relationship-result span{
  color:#E0EADB!important;
}

/* The homepage authority rule is a dark contrast band; keep all descendant copy readable on that surface. */
.v75-site .role-rule :is(strong,h3){
  color:#fff!important;
}
.v75-site .role-rule :is(p,span){
  color:#C8D5CB!important;
}
.v75-site .role-rule small{
  color:#B7DD99!important;
}

/* Light outputs/storytelling surfaces need light-surface text colours, while their nested dark core remains untouched. */
.v75-site .outputs-section .package-source-copy :is(small,.eyebrow-simple),
.v75-site .outputs-section .connected-around-copy :is(small,.eyebrow-simple),
.v75-site .outputs-section .connected-around > :is(small,.eyebrow-simple){
  color:var(--v75-deep)!important;
}
.v75-site .outputs-section .connected-around-grid :is(strong,h3){
  color:var(--v75-ink)!important;
}
.v75-site .outputs-section .connected-around-grid :is(p,span,small){
  color:var(--v75-muted)!important;
}

/* A directional arrow is a connector, not a full content card. Keep it compact instead of stretching a single symbol across a large card. */
.v75-site .relationship-visual > .relationship-arrow{
  width:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  height:48px!important;
  padding:0!important;
  margin:0!important;
  align-self:center!important;
  justify-self:center!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
@media (min-width:981px){
  .v75-site .relationship-visual{
    grid-template-columns:minmax(190px,.85fr) 48px minmax(0,1.7fr) minmax(220px,.9fr)!important;
  }
}

/* Legal/accessibility heroes used a desktop two-column rule with !important; restore the intended single-column mobile flow. */
@media (max-width:820px){
  .v75-site:is(.v71-page-privacy,.v71-page-terms,.v71-page-accessibility) .v71-hero-grid{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .v75-site:is(.v71-page-privacy,.v71-page-terms,.v71-page-accessibility) .v71-hero-copy,
  .v75-site:is(.v71-page-privacy,.v71-page-terms,.v71-page-accessibility) .v71-hero-visual{
    min-width:0!important;
    width:100%!important;
  }
}
