/* Approved content direction 01. Shared axes follow the opening cladding. */
html[data-renewx-advantage] {
  --renewx-copy-x: 9.5vw;
  --renewx-spine-x: 6.7vw;
  --renewx-edge: 12px;
}

html[data-renewx-advantage] .hero-copy {
  --hero-title-size: clamp(2rem, min(5cqw, 8.7svh), 6.25rem);
  left: calc(var(--renewx-copy-x) - var(--renewx-edge));
  top: 22%;
  width: 44%;
  z-index: 6;
}

html[data-renewx-advantage] .hero h1 {
  font-size: var(--hero-title-size);
  line-height: 1.06;
  letter-spacing: -.05em;
}

html[data-renewx-advantage] .hero-title-mobile-break { display: none; }
html[data-renewx-advantage] .hero-title-line { display: block; }

html[data-renewx-advantage] .hero-promise {
  margin-top: 1.1cqw;
  font-size: clamp(1rem, min(2.25cqw, 4svh), 2.875rem);
  line-height: 1.2;
  letter-spacing: -.025em;
}

html[data-renewx-advantage] .hero-promise > .hero-copy-line { display: block; }

@media (min-width: 761px) {
  html[data-renewx-advantage] .hero-promise {
    margin-top: clamp(10px, .8cqw, 16px);
    font-size: clamp(1rem, min(2cqw, 3.5svh), 2.5rem);
    line-height: 1.3;
  }

  html[data-renewx-advantage] .hero-promise > .hero-copy-line { display: inline; }
}

.hero-title-mark,
.hero-title-lead {
  position: absolute;
  left: calc(var(--renewx-spine-x) - var(--renewx-copy-x));
  top: calc(var(--hero-title-size) * .53);
  pointer-events: none;
}

.hero-title-mark {
  z-index: 2;
  width: clamp(16px, 1.6vw, 22px);
  height: clamp(16px, 1.6vw, 22px);
  color: var(--copper);
  transform: translate(-50%, -50%);
}

.hero-title-lead {
  width: calc(var(--renewx-copy-x) - var(--renewx-spine-x) - 12px);
  height: 1px;
  background: var(--copper);
  opacity: .65;
}

html[data-renewx-advantage] .hero {
  --opening-x-size: clamp(20px, 2vw, 28px);
  --opening-label-gap: calc(var(--renewx-copy-x) - var(--renewx-spine-x) - var(--opening-x-size) / 2);
}

html[data-renewx-advantage] .hero .hero-foot {
  display: grid;
  left: calc(var(--renewx-spine-x) - var(--renewx-edge) - var(--opening-x-size) / 2);
  top: 68%;
  bottom: auto;
  width: calc(54% - var(--renewx-spine-x));
  gap: clamp(4px, .6cqw, 9px);
}

html[data-renewx-advantage] .hero .hero-partner-explore,
html[data-renewx-advantage] .hero .explore-link {
  display: flex;
  align-items: center;
  gap: var(--opening-label-gap);
  font-size: clamp(1rem, min(1.7cqw, 3.2svh), 1.75rem);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -.02em;
  min-height: 36px;
}

html[data-renewx-advantage] .hero .explore-link { min-height: 44px; }
html[data-renewx-advantage] .hero-continuation {
  top: var(--spine-start, 22%);
  opacity: .65;
}

html[data-renewx-advantage] .stone-bridge { height: 30px; }
html[data-renewx-advantage] .stone-bridge > svg { display: none; }
html[data-renewx-advantage] .stone-bridge .bridge-line {
  background: var(--copper);
  opacity: .65;
}

html[data-renewx-advantage] .advantage-section,
html[data-renewx-advantage] .process-section {
  max-width: none;
  padding-left: var(--renewx-copy-x);
  padding-right: var(--gutter);
}

html[data-renewx-advantage] .advantage-section {
  padding-top: 30px;
  padding-bottom: clamp(40px, 4vw, 64px);
}

html[data-renewx-advantage] .advantage-section::before,
html[data-renewx-advantage] .process-section::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--section-spine-x, var(--renewx-spine-x));
  width: 1px;
  transform: translateX(-50%);
  background: var(--copper);
  opacity: .65;
  pointer-events: none;
}

html[data-renewx-advantage] .section-spine-mark {
  position: absolute;
  top: 28px;
  left: var(--section-spine-x, var(--renewx-spine-x));
  width: 24px;
  height: 24px;
  color: var(--copper);
  transform: translateX(-50%);
}

html[data-renewx-advantage] .advantage-principle {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: 5%;
  align-items: center;
  min-height: clamp(340px, 29vw, 470px);
}

html[data-renewx-advantage] .advantage-section h2 {
  margin-top: 18px;
  font-size: clamp(2.1rem, 3.8vw, 4.3rem);
  font-weight: 400;
  letter-spacing: -.05em;
  line-height: 1.1;
}

.advantage-intro {
  max-width: 38ch;
  margin-top: 22px;
  font-size: clamp(1rem, 1.12vw, 1.125rem);
  line-height: 1.6;
  color: #706153;
}

.advantage-principle figure { margin: 0; min-width: 0; }
.advantage-layer-image {
  width: 100%;
  height: auto;
  max-height: clamp(278px, 25vw, 400px);
  object-fit: contain;
}

.advantage-layer-labels {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}

.advantage-layer-labels p { font-size: .875rem; line-height: 1.45; }
.advantage-layer-labels span {
  display: block;
  margin-bottom: 5px;
  color: var(--copper);
  font-size: .75rem;
  letter-spacing: .04em;
}

.advantage-benefits {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(22px, 2.5vw, 40px);
  border-top: 1px solid var(--line);
  padding-top: 25px;
  margin-top: 28px;
}

.advantage-benefit-index {
  display: block;
  margin-bottom: 12px;
  font-size: .75rem;
  letter-spacing: .12em;
  color: var(--copper);
}

.advantage-benefits h3 {
  font-size: clamp(1.25rem, 1.65vw, 1.625rem);
  line-height: 1.24;
  font-weight: 500;
  letter-spacing: -.03em;
}

.advantage-benefits p {
  margin-top: 12px;
  max-width: 29ch;
  font-size: 1rem;
  line-height: 1.55;
  color: #706153;
}

.advantage-assurance {
  margin-top: 24px;
  font-size: .8125rem;
  color: #706153;
}

html[data-renewx-advantage] .process-section { border-top: 1px solid var(--line); }
html[data-renewx-advantage] .process-section > .section-spine-mark { top: 49px; }
html[data-renewx-advantage] .journey-rail { height: 350px; }

@media (max-width: 1040px) {
  .advantage-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
}

@media (max-width: 760px) {
  html[data-renewx-advantage] {
    --renewx-copy-x: 11vw;
    --renewx-spine-x: 6.5vw;
    --renewx-edge: 8px;
  }

  html[data-renewx-advantage] .hero-copy {
    --hero-title-size: clamp(1.4375rem, 7.4vw, 3rem);
    top: 22%;
    width: calc(var(--wood-start) - var(--renewx-copy-x) + var(--renewx-edge) - 6px);
  }

  html[data-renewx-advantage] .hero h1 {
    line-height: 1.08;
    letter-spacing: -.04em;
  }

  html[data-renewx-advantage] .hero-title-mobile-break { display: block; }
  html[data-renewx-advantage] .hero-promise {
    font-size: clamp(1rem, 4.05vw, 1.15rem);
    line-height: 1.4;
    letter-spacing: -.035em;
    margin-top: 12px;
  }

  html[data-renewx-advantage] .hero-promise-detail { display: inline; }

  .hero-title-mark { width: 14px; height: 14px; }
  .hero-title-lead { width: calc(var(--renewx-copy-x) - var(--renewx-spine-x) - 8px); }

  html[data-renewx-advantage] .hero { --opening-x-size: 18px; }
  html[data-renewx-advantage] .hero .hero-foot {
    top: auto;
    bottom: calc(100% - var(--floor-start) + clamp(14px, 4vw, 22px));
    width: calc(var(--wood-start) - var(--renewx-spine-x) + var(--renewx-edge) + var(--opening-x-size) / 2 - 7px);
    gap: 0;
  }

  html[data-renewx-advantage] .hero .hero-partner-explore,
  html[data-renewx-advantage] .hero .explore-link {
    font-size: clamp(.875rem, 3.8vw, 1.125rem);
    min-height: 28px;
    line-height: 1.3;
    letter-spacing: -.03em;
  }

  html[data-renewx-advantage] .hero .hero-partner-explore { font-weight: 500; }
  html[data-renewx-advantage] .hero .explore-link { min-height: 44px; }
  html[data-renewx-advantage] .hero .explore-link .line-arrow { display: none; }
  html[data-renewx-advantage] .hero .hero-services-mobile {
    left: calc(var(--renewx-copy-x) - var(--renewx-edge));
    width: 40vw;
  }

  html[data-renewx-advantage] .stone-bridge { height: 20px; }
  html[data-renewx-advantage] .advantage-section { padding-top: 22px; padding-bottom: 40px; }
  html[data-renewx-advantage] .advantage-principle { display: block; min-height: 0; }
  html[data-renewx-advantage] .advantage-section h2 { font-size: clamp(1.8rem, 7.7vw, 2.7rem); }
  html[data-renewx-advantage] .section-spine-mark { width: 18px; height: 18px; top: 23px; }
  html[data-renewx-advantage] .advantage-section > .eyebrow { font-size: .75rem; letter-spacing: .16em; }
  .advantage-intro { max-width: 38ch; margin-top: 18px; }
  .advantage-principle figure { margin-top: 24px; }
  .advantage-layer-image { max-height: 300px; }
  .advantage-layer-labels { gap: 10px; padding-top: 14px; }
  .advantage-benefits { gap: 28px 20px; padding-top: 22px; margin-top: 24px; }
  .advantage-benefits h3 { font-size: 1.25rem; line-height: 1.2; }
  .advantage-benefit-index { margin-bottom: 8px; letter-spacing: .08em; }
  .advantage-assurance { margin-top: 20px; }
  html[data-renewx-advantage] .process-section > .section-spine-mark { top: 30px; }
  html[data-renewx-advantage] .journey-rail { height: 308px; }
}

@media (max-width: 365px) {
  html[data-renewx-advantage] .hero-promise-detail { display: block; }
}

@media print {
  html[data-renewx-advantage] .section-spine-mark,
  html[data-renewx-advantage] .advantage-section::before,
  html[data-renewx-advantage] .process-section::before { display: none; }
}
