/* 2026-09-27: supporting copy enlarged without changing section titles. */
body { font-size: 17px; }
.site-header nav { font-size: 15px; }
.eyebrow,
.section-kicker { font-size: 14px; }
.intro-copy > p,
.destination-detail > p,
.group-copy > p,
.message-copy > p { font-size: 18px; }
.business-grid span { font-size: 14px; }
.purpose-lead { font-size: 19px; }
.delivery-steps p { font-size: 17px; }
.hero-slide .lead { font-size: clamp(17px, 1.3vw, 21px); }
.value-intro > p:last-child,
.market-heading > p:last-child,
.ev-management-lead,
.charging-app-intro,
.contact-copy > p:not(.section-kicker) { font-size: 18px; }
.group-node p { font-size: 16px; }
.contact-details span,
footer p { font-size: 15px; }
.message-copy .name-parts dd,
.message-copy .one-stop p { font-size: 17px; }

.message-image.message-portrait {
  padding: 0;
  width: 100%;
  max-width: 360px;
  justify-self: center;
  overflow: hidden;
  background: #f5f3f3;
}
.message-image.message-portrait img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.product-list .product-photo {
  width: min(100%, 220px);
  height: 240px;
  object-fit: contain;
  object-position: center;
  background: #f7f5ee;
}

.parking-value-visual {
  margin: 0 0 clamp(32px, 4vw, 52px);
  overflow: hidden;
  background: #e8f4f8;
  box-shadow: 0 18px 52px rgba(18, 47, 66, 0.12);
}
.parking-value-visual img {
  width: 100%;
  aspect-ratio: 16 / 7;
  object-fit: cover;
  object-position: center 56%;
}

@media (max-width: 650px) {
  .purpose-lead { font-size: 17px; }
  .parking-value-visual img { aspect-ratio: 4 / 3; }
}
