.product-engineering-route {
  margin: 0 4vw 32px;
  padding: clamp(18px, 3vw, 32px);
  border: 1px solid #d6e3dc;
  border-radius: 16px;
  background: #f2f7f4;
  color: #17241f;
}
.product-engineering-route h2 { margin: 0 0 10px; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.3; }
.product-engineering-route > p { margin: 0 0 20px; max-width: 78ch; line-height: 1.6; }
.product-engineering-route__links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.product-engineering-route__links a {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px;
  min-height: 44px;
  background: #fff;
  border: 1px solid #cbdcd2;
  border-radius: 10px;
  color: #174e42;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.product-engineering-route__links strong { text-decoration: underline; text-underline-offset: 3px; font-size: 18px; }
.product-engineering-route__links span { color: #37473e; font-size: 15px; line-height: 1.55; }
.product-engineering-route__links a:hover { background: #eaf3ed; border-color: #477860; }
.product-engineering-route__links a:focus-visible { outline: 3px solid #165b52; outline-offset: 4px; }
.product-engineering-target, #engineering-route { scroll-margin-top: 112px; }
@media (max-width: 720px) {
  .product-engineering-route { margin: 0 18px 24px; }
  .product-engineering-route__links { grid-template-columns: 1fr; }
}
