/* NODERVA interface refinements — V12 */

/* Readability: small red/light section signals remain compact but legible. */
.eyebrow{font-size:13px;line-height:1.25;letter-spacing:.115em}
.v3-kicker,.v3-section-head>span,.v3-closing>div>span{font-size:12px;line-height:1.25;letter-spacing:.12em}
.section-number,.process-card>span,.principle>span,.culture-list article>span,.contact-card>span{font-size:11px!important;line-height:1.3!important;letter-spacing:.09em}

/* Hero service stream: two identical tracks create a truly seamless loop. */
.neural-hero .engine-stream{height:76px;overflow:hidden;box-shadow:0 -18px 45px rgba(164,42,54,.12);mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%)}
.engine-stream>.engine-stream-track{width:max-content;display:flex;align-items:center;gap:0;white-space:nowrap;animation:noderva-infinite-run 19s linear infinite;font:700 10px/1 var(--mono);letter-spacing:.1em;will-change:transform}
.engine-stream-group{flex:0 0 auto;display:flex;align-items:center;gap:18px;padding-right:18px}
.engine-stream-group span{height:43px;display:flex;align-items:center;padding:0 27px;background:rgba(47,13,18,.2);border:1px solid rgba(255,255,255,.22);clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.13);transition:background .25s}
.engine-stream-group span:nth-of-type(even){background:rgba(255,255,255,.1);transform:translateY(2px)}
.engine-stream-group i{color:rgba(255,255,255,.62);font-style:normal;font-size:9px}
@keyframes noderva-infinite-run{to{transform:translate3d(-50%,0,0)}}

/* About manifesto marker and a visible discovery CTA. */
.manifesto-index{min-height:660px;align-items:center;justify-content:center;overflow:hidden}
.manifesto-index .vertical-word{white-space:nowrap;font-size:clamp(48px,4.3vw,68px);line-height:1;color:rgba(0,0,0,.1);letter-spacing:.075em}
.manifesto-cta{min-height:60px;padding:0 21px;border:1px solid var(--v3-red);gap:68px;font-size:14px;background:rgba(164,42,54,.035);transition:background .3s,color .3s,transform .3s,box-shadow .3s}
.manifesto-cta b{font-size:21px;line-height:1}
.manifesto-cta:hover{background:var(--v3-red);color:#fff;transform:translateY(-3px);box-shadow:0 18px 36px rgba(164,42,54,.18)}

/* Four product phases now have their own visual system. */
.method-line article{min-height:530px;padding:18px 18px 24px;overflow:hidden}
.method-line article>div{padding:6px 5px 0}
.method-visual{position:relative;margin:22px 0 0;aspect-ratio:1.35;overflow:hidden;background:#09090a;border:1px solid rgba(164,42,54,.25)}
.method-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,transparent 42%,rgba(164,42,54,.2));pointer-events:none}
.method-visual img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.01);filter:saturate(.92) contrast(1.05);transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s}
.method-line article:hover .method-visual img{transform:scale(1.08);filter:saturate(1.12) contrast(1.08)}
.method-line h3{margin:28px 5px 13px;font-size:36px}
.method-line p{margin:0 5px}

/* Project and team hero metrics are now part of the reading flow. */
.project-page-hero .page-hero-inner,.team-page-hero .page-hero-inner,.contact-page-hero .page-hero-inner{grid-template-columns:minmax(0,1fr)}
.project-count-badge,.hero-stat-chip{width:max-content;max-width:100%;margin-top:34px;display:flex;align-items:center;gap:20px;padding:14px 18px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.055);backdrop-filter:blur(10px);font-family:var(--mono)}
.project-count-badge strong,.hero-stat-chip strong{font-size:15px;letter-spacing:.06em;color:#fff}
.project-count-badge i,.hero-stat-chip i{width:42px;height:1px;background:var(--red)}
.hero-stat-chip span{font:700 10px/1.3 var(--mono);letter-spacing:.11em;color:rgba(255,255,255,.64)}

/* Contact signal is a calm bridge between hero and channels, not corner clutter. */
.contact-signal-strip{background:#121011;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
.contact-signal-strip>.container{min-height:92px;display:flex;align-items:center;gap:22px}
.contact-signal-strip span,.contact-signal-strip small{font:700 10px/1.3 var(--mono);letter-spacing:.11em;color:rgba(255,255,255,.48)}
.contact-signal-strip strong{font-size:18px;letter-spacing:-.02em}
.contact-signal-strip i{flex:1;height:1px;background:linear-gradient(90deg,var(--red),rgba(164,42,54,.08))}
.contact-layout>.contact-form{box-shadow:0 24px 70px rgba(47,13,18,.08)}

/* Six services fill the 3x2 system without a blank cell. */
.services-grid .service-card:nth-child(6){background:linear-gradient(145deg,#161314,#080808);color:#fff;border-top-color:#fff}
.services-grid .service-card:nth-child(6) p{color:rgba(255,255,255,.66)}
.services-grid .service-card:nth-child(6) .service-icon{color:#fff;border-color:rgba(255,255,255,.28)}
.services-grid .service-card:nth-child(6) .service-outputs span{background:rgba(255,255,255,.09);color:#fff}

/* Dark/light adaptations. */
html[data-theme="dark"] .manifesto-index .vertical-word{color:rgba(255,255,255,.095)}
html[data-theme="dark"] .manifesto-cta{background:rgba(164,42,54,.08)}
html[data-theme="dark"] .method-visual{border-color:rgba(193,100,109,.34)}
html[data-theme="light"] .contact-signal-strip{background:#151213}

@media(max-width:1080px){
  .method-line{grid-template-columns:repeat(2,minmax(0,1fr))}
  .method-line article:nth-child(2){border-right:0}
  .method-line article{border-bottom:1px solid var(--v3-grid)}
}

@media(max-width:760px){
  .eyebrow{font-size:11px}
  .v3-kicker,.v3-section-head>span,.v3-closing>div>span{font-size:10.5px}
  .neural-hero .engine-stream{height:58px;mask-image:none}
  .engine-stream>.engine-stream-track{font-size:8px;animation-duration:15s}
  .engine-stream-group{gap:10px;padding-right:10px}
  .engine-stream-group span{height:35px;padding:0 18px}
  .manifesto-index{display:flex;min-height:auto;align-items:flex-start;border-bottom:1px solid var(--v3-grid);padding:0 0 18px}
  .manifesto-index .vertical-word{display:block;writing-mode:horizontal-tb;transform:none;font-size:clamp(28px,10vw,42px);letter-spacing:.045em}
  .manifesto-cta{width:100%;justify-content:space-between;gap:20px;font-size:12px}
  .method-line{grid-template-columns:1fr}
  .method-line article{min-height:auto;border-right:0}
  .method-line h3{margin-top:24px}
  .method-visual{aspect-ratio:16/10}
  .project-count-badge,.hero-stat-chip{margin-top:26px;gap:13px;padding:12px 14px;flex-wrap:wrap}
  .project-count-badge strong,.hero-stat-chip strong{font-size:12px}
  .project-count-badge i,.hero-stat-chip i{width:24px}
  .contact-signal-strip>.container{min-height:118px;align-items:flex-start;justify-content:center;flex-direction:column;gap:8px;padding-block:22px}
  .contact-signal-strip i{width:100%;flex:none}
  .contact-signal-strip strong{font-size:16px}
}

@media(prefers-reduced-motion:reduce){
  .engine-stream>.engine-stream-track{animation:none}
  .method-visual img{transition:none}
}
