
/* Northpoint SEO Rebuild v1.4 — finishing styles for generic rebuild pages */
.np-seo-rebuild-page .np-rebuild-page{margin:0;padding:0}
.np-seo-rebuild-page main.wp-block-group{margin-top:0}
.np-seo-rebuild-page .entry-content{margin-top:0}
.np-seo-rebuild-page .wp-block-group.alignfull.has-contrast-background-color:first-child{
  position:relative;overflow:hidden;isolation:isolate;
  padding:clamp(72px,8vw,118px) max(24px,calc((100vw - 1180px)/2));
  background:linear-gradient(135deg,#050608 0%,#11151d 52%,#08090c 100%)!important;
  color:#fff;border-bottom:1px solid rgba(215,168,41,.34)
}
.np-seo-rebuild-page .wp-block-group.alignfull.has-contrast-background-color:first-child:before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(circle at 78% 22%,rgba(215,168,41,.18),transparent 27%),
             radial-gradient(circle at 58% 96%,rgba(48,91,156,.18),transparent 34%)
}
.np-seo-rebuild-page .wp-block-group.alignfull.has-contrast-background-color:first-child>p:first-child{
  margin:0 0 14px;color:#d7a829;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase
}
.np-seo-rebuild-page .wp-block-group.alignfull.has-contrast-background-color:first-child h1{
  max-width:940px;margin:.08em 0 .35em;color:#fff;font-size:clamp(2.65rem,5.7vw,5.35rem);line-height:.98;letter-spacing:-.045em;text-wrap:balance
}
.np-seo-rebuild-page .wp-block-group.alignfull.has-contrast-background-color:first-child>p:not(:first-child){
  max-width:820px;color:#d9dbe2;font-size:clamp(1.05rem,1.55vw,1.28rem);line-height:1.7
}
.np-seo-rebuild-page .wp-block-group:not(.alignfull.has-contrast-background-color):not(.np-seo-section){
  max-width:1180px
}
.np-seo-rebuild-page .wp-block-group[style*="padding-top:52px"]{
  padding-top:clamp(52px,6vw,82px)!important;padding-bottom:clamp(52px,6vw,82px)!important
}
.np-seo-rebuild-page .wp-block-group[style*="padding-top:52px"] h2{
  font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;letter-spacing:-.035em
}
.np-seo-rebuild-page .wp-block-columns{gap:20px}
.np-seo-rebuild-page .wp-block-columns>.wp-block-column{
  border-radius:12px
}
.np-seo-rebuild-page .wp-block-group[style*="padding-top:52px"] .wp-block-columns>.wp-block-column{
  padding:26px;border:1px solid #e5e6ea;background:linear-gradient(180deg,#fff,#f8f8fa);box-shadow:0 18px 50px rgba(0,0,0,.055)
}
.np-seo-rebuild-page .wp-block-list{line-height:1.85}
.np-seo-rebuild-page .wp-block-button__link{font-weight:800}
.np-seo-rebuild-page .np-software-hero:before{background:radial-gradient(circle at 78% 24%,rgba(215,168,41,.2),transparent 25%),radial-gradient(circle at 58% 92%,rgba(53,111,132,.22),transparent 30%)}
@media(max-width:781px){
  .np-seo-rebuild-page .wp-block-group.alignfull.has-contrast-background-color:first-child{padding-left:20px;padding-right:20px}
  .np-seo-rebuild-page .wp-block-group.alignfull.has-contrast-background-color:first-child h1{font-size:clamp(2.35rem,12vw,4rem)}
}

/* v1.4.1 — full-width canvas correction.
   The browser-width section is full bleed; designed inner content remains centered. */
.np-seo-rebuild-page .np-rebuild-page,
.np-seo-rebuild-page .np-rebuild-page > .wp-block-post-content,
.np-seo-rebuild-page .wp-block-post-content.is-layout-flow{
  width:100%;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0;padding-right:0
}
.np-seo-rebuild-page .np-rebuild-page > .wp-block-post-content > .alignfull,
.np-seo-rebuild-page .np-rebuild-page > .wp-block-post-content > .np-seo-page-hero,
.np-seo-rebuild-page .np-rebuild-page > .wp-block-post-content > .np-seo-section{
  width:100%;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box
}
.np-seo-rebuild-page .np-seo-page-hero-inner{
  width:min(1180px,calc(100% - 40px));max-width:1180px;margin-left:auto!important;margin-right:auto!important
}
/* Constrained rebuild sections use the same centered 1180px visual grid as the hero/homepage. */
.np-seo-rebuild-page .np-seo-section.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){
  max-width:1180px
}
.np-seo-rebuild-page .np-seo-section.is-layout-constrained > p,
.np-seo-rebuild-page .np-seo-section.is-layout-constrained > h2,
.np-seo-rebuild-page .np-seo-section.is-layout-constrained > .wp-block-buttons{
  width:min(1180px,100%);margin-left:auto;margin-right:auto
}
.np-seo-rebuild-page .np-seo-section.is-layout-constrained > .np-seo-section-lede{
  max-width:820px;margin-left:max(0px,calc((100% - 1180px)/2));margin-right:auto
}
@media(max-width:1228px){
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width:calc(100% - 48px)}
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > p,
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > h2,
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > .wp-block-buttons{width:calc(100% - 48px)}
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > .np-seo-section-lede{margin-left:24px;max-width:min(820px,calc(100% - 48px))}
}
@media(max-width:781px){
 .np-seo-rebuild-page .np-seo-page-hero-inner{width:calc(100% - 40px)}
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width:calc(100% - 40px)}
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > p,
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > h2,
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > .wp-block-buttons{width:calc(100% - 40px)}
 .np-seo-rebuild-page .np-seo-section.is-layout-constrained > .np-seo-section-lede{margin-left:20px;max-width:calc(100% - 40px)}
}
