/* V58 — Home below the locked Header + Hero only. */
:root{--home-green:#70c83b;--home-black:#020403;--home-paper:#f3f3ef}
.home55-intro,.home55-relay,.home55-farsign{position:relative;width:100%;overflow:hidden}

/* Evangelium statement is now a transition, not a full hero-sized section. */
.home55-intro{
  display:grid;
  grid-template-columns:minmax(390px,42%) 1fr;
  height:clamp(390px,43vh,500px);
  min-height:390px;
  background:var(--home-paper);
  color:#111;
}
.home55-intro__copy{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:44px clamp(38px,5.6vw,96px);
  background:linear-gradient(90deg,var(--home-paper) 0%,var(--home-paper) 86%,rgba(243,243,239,.82) 95%,rgba(243,243,239,0) 100%);
}
.home55-intro__statement{
  margin:0;
  max-width:650px;
  font-size:clamp(25px,1.9vw,36px);
  line-height:1.42;
  letter-spacing:-.022em;
  font-weight:300;
}
.home55-intro__statement span{color:var(--home-green)}
.home55-accent{display:block;width:50px;height:2px;margin:25px 0 18px;background:var(--home-green)}
.home55-intro__tag{margin:0;font-size:9px;line-height:1.45;letter-spacing:.22em;font-weight:600}
.home55-intro__visual{
  min-width:0;
  background:url('assets/evangelium-city-v56.webp') center/cover no-repeat;
}

/* Relay: solid black copy + the actual reference image. No visual overlay/electric pulse layer. */
.home55-relay{
  display:grid;
  grid-template-columns:minmax(400px,34%) 1fr;
  height:clamp(600px,68vh,760px);
  min-height:600px;
  background:var(--home-black);
  color:#fff;
}
.home55-relay__copy{
  grid-column:1;
  grid-row:1;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:56px clamp(42px,5.4vw,96px);
  background:var(--home-black);
}
.home55-relay__visual{
  grid-column:2;
  grid-row:1;
  position:relative;
  min-width:0;
  overflow:hidden;
  background:var(--home-black);
}
.home55-relay__canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
.home55-relay__network,.home55-relay__veil{display:none!important}
.home55-relay__copy h2,.home55-farsign__copy h2{
  margin:0;
  font-size:clamp(46px,3.9vw,70px);
  font-weight:300;
  letter-spacing:.30em;
  line-height:1;
}
.home55-relay__copy h2 span,.home55-farsign__copy h2 span{color:var(--home-green)}
.home55-relay__sub,.home55-farsign__sub{
  margin:20px 0 0;
  font-size:10px;
  line-height:1.55;
  letter-spacing:.22em;
  font-weight:600;
}
.home55-relay__sub span,.home55-farsign__sub span{color:var(--home-green)}
.home55-relay__line{
  margin:35px 0 28px;
  font-size:clamp(18px,1.25vw,23px);
  line-height:1.55;
  font-weight:300;
}
.home55-button{
  align-self:flex-start;
  display:inline-flex;
  min-height:50px;
  align-items:center;
  justify-content:center;
  padding:0 25px;
  border:1px solid rgba(112,200,59,.72);
  color:inherit;
  text-decoration:none;
  font-size:10px;
  letter-spacing:.16em;
  background:rgba(0,0,0,.12);
  transition:.2s ease;
}
.home55-button:hover{border-color:var(--home-green);background:rgba(112,200,59,.07)}
.home55-relay__status{
  margin:33px 0 0;
  font-size:9px;
  line-height:1.7;
  letter-spacing:.23em;
  font-weight:600;
}
.home55-relay__status span{color:var(--home-green)}

/* FarSign: same concept, but crop removes the AI-looking fingers/phone detail. */
.home55-farsign{
  height:clamp(620px,74vh,800px);
  min-height:620px;
  background:#111;
  color:#fff;
}
.home55-farsign__picture{position:absolute;inset:0;display:block}
.home55-farsign__picture img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
}
.home55-farsign__veil{
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.52) 0%,rgba(0,0,0,.19) 31%,rgba(0,0,0,.02) 60%);
}
.home55-farsign__copy{
  position:absolute;
  z-index:2;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:min(850px,86vw);
  text-align:center;
  text-shadow:0 2px 20px rgba(0,0,0,.40);
}
.home55-farsign__copy h2{font-size:clamp(46px,4.4vw,78px)}
.home55-farsign__sub{margin-top:21px;font-size:clamp(9px,.78vw,12px)}
.home55-accent--center{margin:25px auto 21px;width:44px}
.home55-farsign__tag{
  margin:0 0 29px;
  font-size:clamp(23px,2.05vw,36px);
  font-weight:300;
  letter-spacing:.20em;
}
.home55-farsign__tag span{color:var(--home-green)}
.home55-farsign__copy .home55-button{align-self:auto}

@media(max-width:900px){
  .home55-intro{
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto 220px;
    height:auto;
    min-height:0;
  }
  .home55-intro__copy{
    padding:48px 26px 40px;
    background:var(--home-paper);
  }
  .home55-intro__statement{
    font-size:clamp(22px,5.3vw,27px);
    line-height:1.42;
  }
  .home55-accent{margin:24px 0 17px;width:45px}
  .home55-intro__tag{font-size:8px;letter-spacing:.15em}
  .home55-intro__visual{
    height:220px;
    background-position:center;
  }

  .home55-relay{
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto 330px;
    height:auto;
    min-height:0;
  }
  .home55-relay__copy{
    grid-column:1;
    grid-row:1;
    padding:50px 26px 42px;
  }
  .home55-relay__visual{
    grid-column:1;
    grid-row:2;
    height:330px;
  }
  .home55-relay__copy h2{font-size:39px;letter-spacing:.22em}
  .home55-relay__sub{margin-top:17px;font-size:7.8px;letter-spacing:.14em}
  .home55-relay__line{margin:23px 0 21px;font-size:16px}
  .home55-button{min-height:44px;padding:0 16px;font-size:9px}
  .home55-relay__status{margin-top:22px;font-size:8px}

  .home55-farsign{
    height:700px;
    min-height:700px;
  }
  .home55-farsign__picture img{object-position:center top}
  .home55-farsign__veil{
    background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.03) 34%,rgba(0,0,0,.52) 46%,rgba(0,0,0,.56) 62%,rgba(0,0,0,.08) 100%);
  }
  .home55-farsign__copy{width:88vw}
  .home55-farsign__copy h2{font-size:clamp(34px,8.8vw,44px);letter-spacing:.18em}
  .home55-farsign__sub{margin-top:15px;font-size:7.8px;letter-spacing:.14em}
  .home55-accent--center{margin:18px auto 16px;width:40px}
  .home55-farsign__tag{margin-bottom:22px;font-size:clamp(18px,4.8vw,23px);letter-spacing:.12em}
}
@media(min-width:901px) and (max-width:1366px){
  .home55-intro{grid-template-columns:minmax(380px,42%) 1fr}
  .home55-intro__statement{font-size:clamp(24px,2vw,32px)}
  .home55-relay{grid-template-columns:minmax(380px,35%) 1fr}
}
@media(prefers-reduced-motion:reduce){
  .home55-relay__canvas{opacity:1}
}
