/* AG Accidents — Legal landing visual layer */
body[data-page="legal"] .hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(12, 111, 79, .12), transparent 31%),
    linear-gradient(110deg, #f8fbfa 0%, #ffffff 48%, #eef6f3 100%);
}

body[data-page="legal"] .hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(20, 39, 60, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20, 39, 60, .025) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to right, transparent 0%, #000 58%, #000 100%);
}

body[data-page="legal"] .hero-grid {
  position: relative;
  z-index: 1;
}

body[data-page="legal"] .hero-media {
  position: relative;
}

body[data-page="legal"] .hero-media::before {
  content: "";
  position: absolute;
  inset: -18px;
  border: 1px solid rgba(1, 101, 69, .17);
  border-radius: 34px;
  pointer-events: none;
}

body[data-page="legal"] .hero-media img {
  min-height: 540px;
  object-fit: cover;
  object-position: center;
  box-shadow: 0 30px 70px rgba(19, 38, 57, .17);
}

body[data-page="legal"] .hero-media .float {
  border-left: 4px solid #08704e;
  box-shadow: 0 18px 42px rgba(20, 38, 55, .14);
  backdrop-filter: blur(14px);
}

body[data-page="legal"] main > .section:not(.soft) .cards .card {
  overflow: hidden;
  padding-top: 0;
  border-color: rgba(21, 43, 61, .10);
  box-shadow: 0 18px 42px rgba(22, 42, 58, .08);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

body[data-page="legal"] main > .section:not(.soft) .cards .card:hover {
  transform: translateY(-5px);
  border-color: rgba(0, 103, 70, .24);
  box-shadow: 0 26px 54px rgba(22, 42, 58, .13);
}

body[data-page="legal"] .legal-card-image {
  display: block;
  width: calc(100% + 48px);
  height: 178px;
  margin: 0 -24px 22px;
  object-fit: cover;
  object-position: center;
  border-bottom: 1px solid rgba(20, 41, 59, .08);
}

body[data-page="legal"] .section.soft.legal-process-visual {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #eef4f2;
}

body[data-page="legal"] .section.soft.legal-process-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image: var(--legal-process-image);
  background-size: cover;
  background-position: center 40%;
  opacity: .18;
  filter: saturate(.75) contrast(.95);
}

body[data-page="legal"] .section.soft.legal-process-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(243,248,246,.98) 0%, rgba(243,248,246,.94) 43%, rgba(243,248,246,.78) 72%, rgba(243,248,246,.9) 100%);
}

body[data-page="legal"] .section.soft .timeline .card {
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(10px);
  border-top: 2px solid rgba(0, 103, 70, .45);
  box-shadow: 0 18px 38px rgba(16, 36, 52, .09);
}

body[data-page="legal"] .lead {
  position: relative;
  overflow: hidden;
}

body[data-page="legal"] .lead::after {
  content: "";
  position: absolute;
  width: 540px;
  height: 540px;
  right: -180px;
  bottom: -260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(52, 164, 120, .18), transparent 68%);
  pointer-events: none;
}

body[data-page="legal"] .conversation-choice {
  overflow: hidden;
}

body[data-page="legal"] .conversation-choice__visual {
  overflow: hidden;
  height: 180px;
  margin: -1px -1px 22px;
  border-radius: 20px 20px 12px 12px;
}

body[data-page="legal"] .conversation-choice__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

body[data-page="legal"] .cta-box.legal-cta-visual {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-height: 250px;
}

body[data-page="legal"] .cta-box.legal-cta-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image: var(--legal-cta-image);
  background-size: cover;
  background-position: center;
  opacity: .38;
}

body[data-page="legal"] .cta-box.legal-cta-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(18,35,52,.97) 0%, rgba(11,82,62,.94) 58%, rgba(5,91,65,.88) 100%);
}

body[data-page="legal"] .cta-box.legal-cta-visual h2,
body[data-page="legal"] .cta-box.legal-cta-visual p {
  color: #fff;
}

@media (max-width: 900px) {
  body[data-page="legal"] .hero-media img {
    min-height: 430px;
  }

  body[data-page="legal"] .legal-card-image {
    height: 210px;
  }
}

@media (max-width: 640px) {
  body[data-page="legal"] .hero-media::before {
    inset: -8px;
    border-radius: 24px;
  }

  body[data-page="legal"] .hero-media img {
    min-height: 360px;
  }

  body[data-page="legal"] .legal-card-image {
    height: 190px;
  }

  body[data-page="legal"] .section.soft.legal-process-visual::before {
    background-position: 68% center;
    opacity: .12;
  }

  body[data-page="legal"] .conversation-choice__visual {
    height: 160px;
  }
}
