/* AI engineering page. Shared landing page styles live in styles.css (body.refresh); only page-specific rules go here. */
.engineering-page #main:focus-visible{outline:2px solid var(--ivory);outline-offset:-4px}

.engineering-page .lp-maintenance{background:var(--paper);color:var(--navy);padding:56px 0;border-top:1px solid var(--edge);border-bottom:1px solid var(--edge)}
.lp-maintenance .hp-split-head{align-items:start}
.lp-maintenance h2{font-size:clamp(30px,3.4vw,44px);line-height:1.12;max-width:18ch}
.lp-maintenance .maintenance-boundary{font-size:16px;line-height:1.55;color:var(--muted);max-width:52ch;margin-top:20px}
@media(max-width:680px){.engineering-page .lp-maintenance{padding:40px 0}}

/* Prior-company founder experience remains open and visibly attributed. */
.engineering-page .lp-hero h1{max-width:18ch;letter-spacing:-.04em}
.engineering-page .founder-proof-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:start}
.engineering-page .founder-proof-list{list-style:none;margin:44px 0 0;padding:0;border-top:1px solid var(--dark-rule)}
.engineering-page .founder-proof-list li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;padding:24px 0;border-bottom:1px solid var(--dark-rule)}
.engineering-page .founder-proof-list h3{font-size:26px;line-height:1.2;font-weight:600;max-width:24ch}
.engineering-page .founder-proof-list p{font-size:17px;line-height:1.6;color:var(--light);max-width:54ch}
.engineering-page .founder-proof-list .founder-proof-provenance{font-size:15px;color:var(--copper-text);margin-top:12px}
.engineering-page .founder-proof-link{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;color:var(--copper-text);text-decoration-thickness:1px}
@media(max-width:960px){
  .engineering-page .founder-proof-intro{grid-template-columns:1fr;gap:24px}
  .engineering-page .founder-proof-list li{gap:40px}
}
@media(max-width:700px){
  .engineering-page .founder-proof-list{margin-top:32px}
  .engineering-page .founder-proof-list li{grid-template-columns:1fr;gap:16px;padding:24px 0}
}

/* Direct client feedback is separate from prior-company founder experience. */
.engineering-page .client-feedback{background:var(--paper);color:var(--navy);padding:56px 0;border-top:1px solid var(--edge)}
.engineering-page .client-feedback-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:72px;align-items:start}
.engineering-page .client-feedback h2{font-size:clamp(28px,3vw,36px);line-height:1.15;max-width:18ch}
.engineering-page .client-feedback blockquote{margin:0;font-size:26px;line-height:1.5;max-width:48ch}
.engineering-page .client-feedback figcaption{margin-top:20px;font-size:15px;color:var(--muted)}
@media(max-width:760px){
  .engineering-page .client-feedback{padding:40px 0}
  .engineering-page .client-feedback-grid{grid-template-columns:1fr;gap:24px}
  .engineering-page .client-feedback blockquote{font-size:22px}
}

/* A dedicated promise, with the conditions kept in the same reading group. */
.engineering-page .lp-guarantee{background:var(--navy);padding:56px 0;border-top:1px solid var(--dark-rule)}
.engineering-page #guarantee{scroll-margin-top:0}
.engineering-page .lp-guarantee .hp-split-head{align-items:start}
.engineering-page .lp-guarantee h2{font-size:clamp(30px,3.4vw,44px);line-height:1.12}
.engineering-page .guarantee-scope{margin-top:16px;font-size:20px;line-height:1.5;color:var(--light)}
.engineering-page .guarantee-promise{font-size:36px;line-height:1.2;font-weight:500;letter-spacing:-.02em;max-width:26ch;text-wrap:balance}
.engineering-page .guarantee-terms{margin-top:24px;font-size:18px;line-height:1.6;color:var(--light);max-width:52ch}
.engineering-page .guarantee-terms p+p{margin-top:20px}
.engineering-page .guarantee-link{text-decoration-color:var(--copper);text-decoration-thickness:1px}
@media(max-width:960px){
  .engineering-page .lp-guarantee .hp-split-head{grid-template-columns:1fr;gap:28px}
}
@media(max-width:560px){
  .engineering-page .lp-guarantee{padding:40px 0}
  .engineering-page .guarantee-promise{font-size:30px}
}

/* Software homepage. Builds on the site-wide structural system in
   styles.css; only homepage layout and type live here. */
.home-software .nw-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.home-software .hp-eyebrow{margin:0 0 14px}
.home-software .hp-button{min-height:48px;padding:0 22px;font-size:15px}
.home-software .nw-button{min-height:52px;padding:0 26px;font-size:16px}
.home-software .nw-text-link{display:inline-flex;align-items:center;min-height:52px;color:var(--ivory);font-size:16px;font-weight:500;text-decoration:underline;text-decoration-color:var(--copper);text-decoration-thickness:1px;text-underline-offset:6px}
.home-software .hp-email{text-decoration-color:var(--copper)}
@media(hover:hover){.home-software .nw-text-link:hover,.home-software .hp-email:hover{color:var(--copper-text);text-decoration-color:currentColor}}
.home-software .hp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;margin-top:24px}

/* Hero */
.home-software .nw-hero{background:var(--ink);padding:48px 0 52px;border-bottom:1px solid var(--dark-rule)}
.home-software .nw-hero-solo .nw-hero-copy{max-width:1000px}
.home-software .nw-hero .hp-eyebrow{color:var(--copper-text);margin-bottom:16px}
.home-software .nw-hero h1{font-size:clamp(46px,6.6vw,96px);line-height:.96;font-weight:600;letter-spacing:-.05em}
.home-software .nw-hero h1 span{display:inline;white-space:normal}
.home-software .nw-hero h1 .nw-keep,.home-software .nw-hero h1 .nw-accent{white-space:nowrap}
.home-software .nw-accent{color:var(--copper-text);text-decoration:none}
.home-software .nw-hero-body{font-size:20px;line-height:1.45;color:var(--light);max-width:46ch;margin-top:20px}
.home-software .nw-call-note{margin-top:10px;font-size:14px;line-height:1.45;color:var(--light);max-width:52ch}

/* The team: headline and lede side by side, then the comparison grid. */
.home-software .nw-why{background:var(--warm);color:var(--navy);padding:56px 0 0}
.home-software .nw-why .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:56px;align-items:end}
.home-software .nw-why .hp-eyebrow{grid-column:1/-1;color:var(--copper-ink)}
.home-software .nw-why h2{font-size:clamp(32px,3.6vw,50px);line-height:1.02;letter-spacing:-.04em;max-width:20ch}
.home-software .nw-why-lede{font-size:17px;line-height:1.5;color:var(--muted);max-width:56ch;margin:0}
.home-software .nw-compare{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;margin-top:32px;border:1px solid var(--navy)}
.home-software .nw-compare ul{list-style:none;margin:0;padding:0}
.home-software .nw-old,.home-software .nw-new{padding:0;border:0;border-radius:0;box-shadow:none;transform:none}
.home-software .nw-old{background:var(--paper);color:var(--muted)}
.home-software .nw-new{background:var(--navy);color:var(--ivory)}
.home-software .nw-label{margin:0;padding:12px 20px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--navy)}
.home-software .nw-old .nw-label{color:var(--muted)}
.home-software .nw-new .nw-label{color:var(--copper-text);border-bottom-color:var(--dark-rule)}
.home-software .nw-compare li{display:flex;gap:12px;align-items:baseline;padding:12px 20px;font-size:17px;line-height:1.35}
.home-software .nw-old li+li{border-top:1px solid var(--rule)}
.home-software .nw-new li+li{border-top:1px solid var(--dark-rule)}
.home-software .nw-old li{text-decoration:line-through;text-decoration-color:rgba(82,97,107,.5)}
.home-software .nw-new li{font-weight:500}
.home-software .nw-compare svg{width:14px;height:14px;flex:none;align-self:center;fill:none;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter}
.home-software .nw-x{stroke:var(--muted)}
.home-software .nw-check{stroke:var(--copper-text)}
.home-software .nw-founder{grid-column:1/-1;margin:0;padding:18px 0 52px;border:0;font-size:15px;line-height:1.5;color:var(--muted);max-width:none}
.home-software .nw-founder a{color:var(--copper-ink);text-underline-offset:4px;text-decoration-thickness:1px}

/* Late Clause: its own section, with a scale showing what the client pays. */
.home-software .nw-guarantee{background:var(--paper);color:var(--navy);padding:52px 0 56px;border-top:1px solid var(--edge)}
.home-software .nw-clause-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:end}
.home-software .nw-guarantee .nw-clause{color:var(--copper-ink);margin:0 0 10px}
.home-software .nw-guarantee h2{font-size:clamp(32px,3.6vw,50px);line-height:1.02;letter-spacing:-.04em;max-width:16ch;color:var(--navy)}
.home-software .nw-clause-lede{font-size:17px;line-height:1.5;color:var(--muted);max-width:56ch;margin:0}
.home-software .nw-scale-label{margin:32px 0 0;padding-bottom:10px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--navy)}
.home-software .nw-scale{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-bottom:1px solid var(--edge)}
.home-software .nw-scale li{display:flex;flex-direction:column;gap:6px;padding:16px 16px 18px 0}
.home-software .nw-scale li+li{padding-left:16px;border-left:1px solid var(--edge)}
.home-software .nw-scale-when{font-size:14px;line-height:1.3;color:var(--muted)}
.home-software .nw-scale-pay{font-size:clamp(28px,3vw,40px);line-height:1;font-weight:600;letter-spacing:-.04em;color:var(--copper-ink)}
.home-software .nw-scale-on .nw-scale-pay{color:var(--navy)}
.home-software .nw-guarantee-terms{font-size:15px;line-height:1.45;margin-top:14px;max-width:70ch;color:var(--muted)}

/* Services: one ruled editorial grid. */
.home-software .nw-scope{background:var(--paper);color:var(--navy);padding:52px 0 56px;border-top:1px solid var(--edge)}
.home-software .nw-scope h2{font-size:clamp(28px,3vw,40px);line-height:1.05;letter-spacing:-.035em}
.home-software .nw-scope-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:20px;background:var(--edge);border-top:1px solid var(--navy);border-bottom:1px solid var(--edge)}
.home-software .nw-scope-grid div{padding:18px 22px 22px 0;border:0;border-radius:0;background:var(--paper)}
.home-software .nw-scope-grid div+div{padding-left:22px}
.home-software .nw-scope-grid h3{font-size:18px;line-height:1.2;letter-spacing:-.01em}
.home-software .nw-scope-grid p{font-size:15px;line-height:1.45;color:var(--muted);margin-top:8px}

/* Maintenance */
.home-software .lp-maintenance{background:var(--warm);color:var(--navy);padding:52px 0 56px;border-top:1px solid var(--edge);border-bottom:0}
.home-software .lp-maintenance .hp-split-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.home-software .lp-maintenance h2{font-size:clamp(32px,3.6vw,50px);line-height:1.02;letter-spacing:-.04em;max-width:14ch}
.home-software .lp-maintenance .hp-lede{font-size:18px;line-height:1.5;color:var(--navy);max-width:54ch}
.home-software .lp-maintenance .maintenance-boundary{font-size:15px;line-height:1.45;color:var(--muted);margin-top:14px;padding-top:14px;border-top:1px solid var(--edge);max-width:54ch}

/* Closing call to action */
.home-software .hp-contact{background:var(--ink);border-top:1px solid var(--dark-rule)}
.home-software .hp-contact-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:end}
.home-software .hp-contact h2{font-size:clamp(32px,3.8vw,52px);line-height:1.02;letter-spacing:-.04em;max-width:20ch}
.home-software .hp-contact .hp-lede{font-size:17px;line-height:1.5;margin-top:14px;max-width:54ch}
.home-software .hp-contact-actions{gap:10px}


@media(max-width:1100px){
  .home-software .nw-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-software .nw-scope-grid div,.home-software .nw-scope-grid div+div{padding:18px 22px 22px 0}
  .home-software .nw-scope-grid div:nth-child(even){padding-left:22px}
}
@media(max-width:960px){
  .home-software .nw-why .wrap{grid-template-columns:1fr;row-gap:14px}
  .home-software .nw-compare{margin-top:18px}
  .home-software .lp-maintenance .hp-split-head,.home-software .hp-contact-grid{grid-template-columns:1fr;gap:20px}
  .home-software .nw-clause-head{grid-template-columns:1fr;gap:14px}
  .home-software .nw-scale{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-software .nw-scale li:nth-child(4){padding-left:0;border-left:0}
  .home-software .nw-scale li:nth-child(n+4){border-top:1px solid var(--edge)}
}
@media(max-width:760px){
  .home-software .nw-compare{grid-template-columns:1fr}
  .home-software .nw-new{border-top:1px solid var(--navy)}
}
@media(max-width:560px){
  .home-software .nw-hero{padding:28px 0 36px}
  .home-software .nw-hero-body{font-size:18px}
  .home-software .nw-why{padding-top:40px}
  .home-software .nw-scope,.home-software .lp-maintenance,.home-software .nw-guarantee{padding:40px 0}
  .home-software .nw-scale li{padding:12px 10px 14px 0}
  .home-software .nw-scale li+li{padding-left:10px}
  .home-software .nw-scale-when{font-size:13px}
  .home-software .nw-compare li,.home-software .nw-label{padding-left:16px;padding-right:16px}
  .home-software .nw-scope-grid{grid-template-columns:1fr}
  .home-software .nw-scope-grid div,.home-software .nw-scope-grid div+div,.home-software .nw-scope-grid div:nth-child(even){padding:16px 0 18px}
}
.home-software .nw-scope-grid .nw-scope-more{margin-top:10px}
.home-software .nw-scope-grid .nw-scope-more a{color:var(--copper-ink);font-weight:500;text-underline-offset:4px;text-decoration-thickness:1px}
