/* ==========================================================================
   PS Home 2026 — parent-theme neutraliser
   Astra + the Elementor kit set global heading colours, header positioning
   and link colours that fight this template. Everything here is scoped to
   body.ps26 so no other page on the site is affected.
   ========================================================================== */

body.ps26 h1,
body.ps26 h2,
body.ps26 h3,
body.ps26 h4,
body.ps26 h5,
body.ps26 h6{
  color:inherit;
  font-family:var(--font-display);
  margin:0;
}

body.ps26 p,
body.ps26 li,
body.ps26 span,
body.ps26 address{color:inherit;}

/* `.ps26 p{margin:0}` outranks the single-class component rules, so the
   paragraphs that need breathing room set it back here */
body.ps26 .hero__copy{margin-top:clamp(28px,3vw,40px);}
body.ps26 .shead__d{margin-top:0;}
body.ps26 .pil p{margin-top:12px;}
body.ps26 .post p{margin-top:0;}

body.ps26 a{text-decoration:none;}
body.ps26 a:hover,
body.ps26 a:focus{text-decoration:none;}
body.ps26 .svc__row,
body.ps26 .post a,
body.ps26 .plist a{color:inherit;}

/* primary navigation sits on the dark hero */
body.ps26 .nav__links a{color:var(--gold-lite);}
body.ps26 .nav__links a:hover{color:#fff;}
body.ps26 .nav__logo{color:inherit;}
body.ps26 .nav__cta,
body.ps26 .nav__cta:hover{color:#fff;}

/* header must sit above the hero, not in the document flow */
body.ps26 header.nav{
  position:fixed;
  top:0;left:0;right:0;
  width:100%;
  background:transparent;
  box-shadow:none;
  border-radius:0;
}
body.ps26 header.nav.is-stuck{background:rgba(5,5,5,.82);}

/* Astra content wrappers occasionally add their own max-width / padding */
body.ps26 .ast-container,
body.ps26 #content,
body.ps26 .site-content,
body.ps26 .entry-content{max-width:none;padding:0;margin:0;}

/* parent-theme chrome we are not using on this template */
body.ps26 #masthead,
body.ps26 .site-header,
body.ps26 .site-footer,
body.ps26 .ast-above-header,
body.ps26 .ast-below-header,
body.ps26 #ast-scroll-top{display:none!important;}

/* keep our own colours on the dark bands whatever the kit says */
body.ps26 .hero,
body.ps26 .sec--dark,
body.ps26 .vm__c,
body.ps26 .foot{color:var(--text-inv);}
body.ps26 .hero h1,
body.ps26 .sec--dark h2,
body.ps26 .sec--dark h3,
body.ps26 .vm__c h3,
body.ps26 .foot h4{color:var(--text-inv);}
body.ps26 .sec--dark .eyebrow,
body.ps26 .foot h4,
body.ps26 .vm__k,
body.ps26 .founder__by span{color:var(--gold-lite);}
body.ps26 .orange,
body.ps26 .post__k,
body.ps26 .eyebrow{color:var(--orange);}
body.ps26 .sec--dark .eyebrow{color:var(--gold-lite);}

/* light bands */
body.ps26 .sec:not(.sec--dark) h2,
body.ps26 .sec:not(.sec--dark) h3,
body.ps26 .stat__n,
body.ps26 .pil h3,
body.ps26 .post h3{color:var(--text);}
body.ps26 .stat__n em,
body.ps26 .accent.orange{color:var(--orange);}

/* buttons: strip parent-theme button styling */
body.ps26 .btn{
  background:var(--orange);
  color:#fff;
  border-radius:100px;
  text-transform:none;
  letter-spacing:.01em;
  line-height:1.2;
}
body.ps26 .btn:hover{background:var(--orange-deep);color:#fff;}
body.ps26 .btn--ghost{background:transparent;}
body.ps26 .hero .btn--ghost,
body.ps26 .sec--dark .btn--ghost{color:var(--text-inv);}
body.ps26 .btn--ghost:hover{background:transparent;}

body.ps26 button{font-family:var(--font-body);}
body.ps26 .nav__burger{background:none;border:0;}

/* the floating metric pods are light cards on a dark hero */
body.ps26 .pod,
body.ps26 .pod b{color:#111;}
body.ps26 .pod small{color:var(--muted);}
body.ps26 .pod__ico{color:var(--orange-deep);}

/* marquee + service rows */
body.ps26 .marq__grp span{color:var(--text-inv);}
body.ps26 .svc__t small,
body.ps26 .svc__tags span,
body.ps26 .lede,
body.ps26 .hero__copy,
body.ps26 .hero__trust{color:var(--muted-inv);}
body.ps26 .sec:not(.sec--dark) .lede,
body.ps26 .pil p,
body.ps26 .post p,
body.ps26 .stat__l{color:var(--muted);}
body.ps26 .svc__no,
body.ps26 .hero__trust b{color:var(--gold-lite);}
body.ps26 .pil__n{color:var(--gold);}

/* footer links */
body.ps26 .foot ul a,
body.ps26 .foot address,
body.ps26 .foot address a,
body.ps26 .foot__brand p,
body.ps26 .foot__bar{color:var(--muted-inv);}
body.ps26 .foot ul a:hover,
body.ps26 .foot address a:hover{color:var(--orange);}

/* back-to-top */
body.ps26 .top{color:var(--text);background:var(--white);}
body.ps26 .top:hover{color:#fff;background:var(--orange);}

/* WPForms inside the dark contact panel */
body.ps26 .cta__form,
body.ps26 .cta__form *{color:var(--text);}
body.ps26 .cta__form .wpforms-field-label{color:var(--muted)!important;}
body.ps26 .cta__form button[type=submit]{color:#fff!important;}
body.ps26 .cta__ways b,
body.ps26 .cta__ways b a{color:var(--text-inv);}
body.ps26 .cta__ways small{color:var(--gold-lite);}
body.ps26 .cta__ways b a:hover{color:var(--orange);}
