/* One-page services layout, built on the same visual system as the homepage. */

.neh-services-single .neh-v2-hero__media img {
  object-position: center 54%;
}

.neh-services-single .neh-v2-hero__shade {
  background:
    linear-gradient(90deg, rgba(2, 7, 12, .95), rgba(2, 7, 12, .69) 43%, rgba(2, 7, 12, .22) 100%),
    linear-gradient(180deg, rgba(2, 7, 12, .2), transparent 42%, rgba(2, 7, 12, .88));
}

.neh-services-single .neh-v2-hero h1 {
  max-width: 1160px;
  font-size: clamp(48px, 5.7vw, 92px);
  line-height: .96;
}

.neh-offer {
  display: grid;
  min-height: 640px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  scroll-margin-top: 78px;
}

.neh-offer__media {
  position: relative;
  min-width: 0;
  min-height: 640px;
  margin: 0;
  overflow: hidden;
  background: #1a2632;
}

.neh-offer__media::after {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(180deg, transparent 67%, rgba(2, 7, 12, .23));
}

.neh-offer__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2, .7, .2, 1);
}

.neh-offer__media:hover img { transform: scale(1.025); }
.neh-offer--image-right .neh-offer__media { grid-column: 2; grid-row: 1; }
.neh-offer--image-right .neh-offer__body { grid-column: 1; grid-row: 1; }

.neh-offer__body {
  position: relative;
  display: flex;
  min-width: 0;
  padding: clamp(68px, 7vw, 112px) clamp(30px, 5.3vw, 88px);
  align-items: center;
  overflow: hidden;
  isolation: isolate;
}

.neh-offer__body::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  background-image:
    linear-gradient(var(--offer-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--offer-grid) 1px, transparent 1px);
  background-size: 64px 64px;
  opacity: .8;
}

.neh-offer__body::after {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: repeating-radial-gradient(circle at 100% 50%, transparent 0 86px, var(--offer-ring) 87px 88px, transparent 89px 168px);
  content: "";
  pointer-events: none;
}

.neh-offer--paper {
  color: var(--v2-night);
  background: var(--v2-paper-light);
  --offer-grid: rgba(7, 16, 25, .048);
  --offer-ring: rgba(167, 68, 0, .105);
  --offer-rule: rgba(7, 16, 25, .18);
  --offer-copy: #35414a;
}

.neh-offer--night {
  color: #fff;
  background: linear-gradient(145deg, #0c2441, #071019 64%, #050b11);
  --offer-grid: rgba(255, 255, 255, .038);
  --offer-ring: rgba(242, 140, 0, .13);
  --offer-rule: rgba(255, 255, 255, .18);
  --offer-copy: rgba(255, 255, 255, .82);
}

.neh-offer__body-inner { width: min(100%, 670px); }
.neh-offer .neh-section-label { margin-bottom: clamp(42px, 5vw, 70px); }

.neh-offer h2 {
  max-width: 690px;
  margin: 0;
  color: inherit;
  font-size: clamp(42px, 4.4vw, 72px);
  line-height: .98;
  letter-spacing: -.055em;
  overflow-wrap: anywhere;
}

.neh-offer__facts {
  margin: clamp(42px, 5vw, 66px) 0 0;
  border-top: 1px solid var(--offer-rule);
}

.neh-offer__facts > div {
  display: grid;
  padding: 19px 0 20px;
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 18px;
  border-bottom: 1px solid var(--offer-rule);
}

.neh-offer dt {
  padding-top: 5px;
  color: #a74400;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.neh-offer--night dt { color: var(--v2-orange-light); }
.neh-offer dd { margin: 0; color: var(--offer-copy); font-size: clamp(16px, 1.25vw, 19px); line-height: 1.62; }

@media (max-width: 1050px) {
  .neh-offer { min-height: 0; grid-template-columns: 1fr; }
  .neh-offer__media,
  .neh-offer--image-right .neh-offer__media { height: clamp(330px, 53vw, 560px); min-height: 0; grid-column: 1; grid-row: 1; }
  .neh-offer__body,
  .neh-offer--image-right .neh-offer__body { grid-column: 1; grid-row: 2; }
  .neh-offer__body { padding: clamp(62px, 8vw, 90px) var(--v2-gutter); }
  .neh-offer__body-inner { width: min(100%, 790px); margin-inline: auto; }
}

@media (max-width: 759px) {
  .neh-services-single .neh-v2-hero__media img { object-position: 59% center; }
  .neh-services-single .neh-v2-hero__shade {
    background: linear-gradient(180deg, rgba(2, 7, 12, .08), rgba(2, 7, 12, .24) 43%, rgba(2, 7, 12, .94) 80%, #02070c);
  }
  .neh-services-single .neh-v2-hero h1 {
    width: 100%;
    max-width: 100%;
    font-size: clamp(26px, 7.2vw, 34px);
    line-height: .99;
    letter-spacing: -.055em;
  }
  .neh-offer__media,
  .neh-offer--image-right .neh-offer__media { height: clamp(250px, 70vw, 340px); }
  .neh-offer__body { padding: 52px 20px 68px; }
  .neh-offer .neh-section-label { margin-bottom: 30px; font-size: 10px; }
  .neh-offer h2 { font-size: clamp(36px, 9.2vw, 52px); }
  .neh-offer__facts { margin-top: 36px; }
  .neh-offer__facts > div { grid-template-columns: 58px minmax(0, 1fr); gap: 12px; padding: 17px 0; }
  .neh-offer dd { font-size: 16px; line-height: 1.55; }
}

@media (prefers-reduced-motion: reduce) {
  .neh-offer__media img { transition: none; }
}
