/* ============================ services — editorial rows ============================ */
.srv{padding:clamp(50px,7vh,90px) 0 60px}
.srv .srv-head{padding:0 var(--gut) clamp(50px,8vh,100px)}
.srv .srv-head h2{font-family:var(--f-disp);font-weight:370;letter-spacing:-.02em;line-height:1;font-size:clamp(1.95rem,5.55vw,5.25rem);max-width:14ch}
.srv .srv-head h2.tr-ne{font-size:clamp(1.76rem,5vw,4.73rem)}   /* NE 10% smaller */
.srv .srv-head h2 em{font-style:italic;color:var(--tr)}
body.lang-ne .srv-head h2{line-height:1.26}
.srv .srv-head .lbl{margin-bottom:30px;display:block}
.srow{position:relative;padding:clamp(34px,5.5vh,60px) var(--gut);display:grid;
  grid-template-columns:minmax(70px,180px) minmax(0,1.15fr) minmax(0,1fr);gap:clamp(18px,3.5vw,60px);align-items:baseline}
.srow .rule{position:absolute;top:0;left:var(--gut);right:var(--gut);height:1px;background:var(--hl);transform:scaleX(0);transform-origin:left}
.no-motion .srow .rule{transform:none}
.srow .num{font-family:var(--f-mono);font-weight:400;font-size:clamp(1.6rem,4vw,3.2rem);color:transparent;-webkit-text-stroke:1px var(--gr2);line-height:1;transition:color .5s var(--ease),-webkit-text-stroke-color .5s}
.srow h3{font-family:var(--f-disp);font-weight:410;letter-spacing:-.015em;font-size:clamp(1.5rem,3.45vw,2.4rem);line-height:1;transition:transform .55s var(--ease)}
.srow h3 .arw{display:inline-block;color:var(--tr);opacity:0;transform:translateX(-14px) rotate(45deg);transition:.45s var(--ease);font-family:var(--f-body);font-weight:300;font-size:.55em;vertical-align:.3em;margin-left:.2em}
.srow .txt{font-size:.94rem;color:var(--gr);max-width:44ch}
.srow .txt .who{display:block;font-style:italic;color:var(--ink2);margin-bottom:10px;font-family:var(--f-disp);font-weight:410;font-size:1.02rem}
.srow .txt .inc{display:block;margin-top:12px;font-family:var(--f-mono);font-size:.66rem;letter-spacing:.06em;line-height:2;color:var(--gr);text-transform:uppercase}
.srow:hover .num{color:var(--tr);-webkit-text-stroke-color:var(--tr)}
.srow:hover h3{transform:translateX(clamp(6px,1vw,16px))}
.srow:hover h3 .arw{opacity:1;transform:translateX(0) rotate(45deg)}
.srv .srv-note{padding:clamp(40px,6vh,70px) var(--gut) 0;max-width:66ch;font-size:.82rem;color:var(--gr);font-family:var(--f-mono);letter-spacing:.02em;line-height:1.9}
.srv .srv-note b{color:var(--tr);font-weight:500}
@media(max-width:840px){.srow{grid-template-columns:60px 1fr;grid-template-rows:auto auto}.srow .txt{grid-column:1/-1;max-width:none;margin-top:24px}}

/* floating service preview image (fine pointers only) */
.sprev{position:fixed;top:0;left:0;z-index:90;width:min(280px,26vw);aspect-ratio:16/11;pointer-events:none;
  opacity:0;transform:scale(.85) rotate(-3deg);transition:opacity .35s var(--ease),transform .45s var(--ease);
  overflow:hidden;box-shadow:0 30px 60px -20px rgba(16,20,24,.35);will-change:transform}
.sprev img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.sprev.on{opacity:1;transform:scale(1) rotate(0deg)}
.sprev::after{content:"PREVIEW / SWAP";position:absolute;bottom:8px;left:10px;font-family:var(--f-mono);font-size:.52rem;letter-spacing:.18em;color:#fff;mix-blend-mode:difference}
@media (hover:none),(max-width:840px){.sprev{display:none}}

/* compact 10-row services */
.srow.s10{padding:clamp(26px,4vh,44px) var(--gut);grid-template-columns:minmax(60px,140px) minmax(0,1.3fr) minmax(0,1fr)}
.srow.s10 h3{font-size:clamp(1.28rem,2.85vw,2.55rem)}
.srow.s10 .txt{font-size:.9rem}
.srow.s10:nth-child(even) .num{-webkit-text-stroke-color:#B9C6D4}
.srow.s10:hover:nth-child(even) .num{color:var(--blu);-webkit-text-stroke-color:var(--blu)}
.srow.s10:hover:nth-child(even) h3 .arw{color:var(--blu)}
@media(max-width:840px){.srow.s10{grid-template-columns:60px 1fr;grid-template-rows:auto auto}}

/* ============================ image band ============================ */
.band{position:relative;height:min(120vh,900px);overflow:hidden;margin:clamp(60px,10vh,120px) 0}
.band .band-img{position:absolute;inset:-18% 0;background-size:cover;background-position:center;filter:contrast(1.06);will-change:transform;
  background-image:url("/assets/band-1920.webp")}
@media(max-width:840px){.band .band-img{background-image:url("/assets/band-1280.webp")}}
.band .band-cap{position:absolute;bottom:40px;left:var(--gut);right:var(--gut);display:flex;justify-content:space-between;color:#fff;mix-blend-mode:difference}
.band .band-word{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);text-align:center;color:#fff;mix-blend-mode:difference;
  font-family:var(--f-disp);font-weight:370;font-style:italic;letter-spacing:-.02em;font-size:clamp(3rem,11vw,11rem);line-height:1;pointer-events:none}
.no-motion .band{height:70vh}
@media(max-width:840px){.band{height:64vh;margin:clamp(40px,7vh,80px) 0}.band .band-cap{bottom:24px;flex-wrap:wrap;gap:6px 20px}}
