/* Accepted layout retained. This layer affects only the brand bridge and VTS30 photo presentation. */
.brand-value {
  background: radial-gradient(ellipse at 50% 0, #e9eff4 0, #f4f7f9 54%, #f7f9fa 100%);
  border-top: 1px solid #e4eaf0;
  border-bottom-color: #dbe3ea;
  padding: 62px 0 38px;
}
.brand-value-intro .eyebrow { color: #657582; letter-spacing: .16em; margin-bottom: 18px; }
.brand-value-intro h2 { font-size: clamp(35px, 3.15vw, 45px); font-weight: 600; line-height: 1.18; letter-spacing: -.04em; }
.brand-value-intro > p:last-child { color: #596b79; font-size: 15px; margin-top: 18px; line-height: 1.75; }
.brand-directions { border-top-color: #cbd7e1; margin-top: 36px; padding-top: 26px; }
.brand-directions a { border-right-color: #d4dee6; padding-block: 4px; }
.brand-directions .direction-index { color: #c9323d; font-weight: 600; letter-spacing: .06em; }
.brand-directions h3 { font-size: 19px; letter-spacing: -.025em; }
.brand-directions p { font-size: 12px; line-height: 1.75; color: #647786; }
.brand-directions a:focus-visible { outline: 2px solid #E52935; outline-offset: 7px; }
.system-product-photo {
  padding: 26px 30px 24px;
  background: radial-gradient(ellipse at 45% 32%, #fcfdfe 0%, #f1f5f8 62%, #e8eff4 100%);
}
.system-product-photo .reserve-topline { font-size: 9px; align-items: center; }
.system-product-photo .reserve-topline span:last-child { color: #7c8c98; letter-spacing: .04em; }
.vts30-photo-stage { display: flex; align-items: center; justify-content: center; min-height: 295px; margin: 10px -8px 12px; flex: 1; }
.vts30-photo-stage img { display: block; width: 100%; height: 295px; object-fit: contain; }
.vts30-photo-detail { display: grid; grid-template-columns: 108px 1fr; align-items: center; gap: 17px; margin-bottom: 16px; }
.vts30-photo-detail img { width: 108px; height: 76px; object-fit: cover; object-position: 50% 50%; border-radius: 3px; }
.vts30-photo-detail span { display: block; font-size: 11px; font-weight: 600; color: #4c606f; letter-spacing: .02em; }
.vts30-photo-detail p { font-size: 10px; color: #728592; line-height: 1.6; margin: 5px 0 0; }
.system-product-photo figcaption { border-top-color: #d0dce5; font-size: 9px; padding-top: 12px; }
.vts30-source-photo { display: block; width: 100%; max-height: 310px; object-fit: cover; object-position: 50% 50%; margin-top: 22px; border-radius: 3px; }
.system-detail-dialog .vts30-source-note { font-size: 11px; line-height: 1.7; margin-top: 10px; color: #6d7e8b; }
@media (max-width: 1100px) {
  .brand-directions h3 { font-size: 17px; }
  .vts30-photo-stage { margin-inline: -5px; }
  .vts30-photo-detail { grid-template-columns: 90px 1fr; gap: 12px; }
  .vts30-photo-detail img { width: 90px; height: 68px; }
}
@media (max-width: 900px) {
  .brand-value { padding-top: 54px; }
  .brand-value-intro h2 { font-size: 39px; }
  .brand-value-intro > p:last-child { font-size: 14px; }
  .system-product-photo { padding: 24px 20px; }
  .system-product-photo .reserve-topline { flex-direction: column; align-items: start; gap: 5px; }
  .vts30-photo-stage, .vts30-photo-stage img { min-height: 246px; height: 246px; }
  .vts30-photo-detail { grid-template-columns: 82px 1fr; gap: 11px; }
  .vts30-photo-detail img { width: 82px; height: 70px; }
  .vts30-photo-detail span { font-size: 10px; }
  .vts30-photo-detail p { font-size: 9px; }
}
@media (max-width: 600px) {
  .brand-value { padding: 42px 0 19px; }
  .brand-value-intro .eyebrow { font-size: 9px; letter-spacing: .13em; margin-bottom: 17px; }
  .brand-value-intro h2 { font-size: 32px; line-height: 1.2; letter-spacing: -.035em; }
  .brand-value-intro > p:last-child { font-size: 12px; line-height: 1.8; margin-top: 17px; }
  .brand-directions { margin-top: 27px; padding-top: 0; }
  .brand-directions a, .brand-directions a:first-child, .brand-directions a:last-child { padding-block: 20px; border-bottom-color: #d4dfe8; }
  .brand-directions h3 { font-size: 18px; }
  .brand-directions p { font-size: 11px; }
  .system-product-photo { min-height: 360px; padding: 20px 22px 18px; }
  .system-product-photo .reserve-topline { flex-direction: row; align-items: center; font-size: 8px; gap: 10px; }
  .vts30-photo-stage { min-height: 202px; height: 202px; margin: 8px -6px 12px; }
  .vts30-photo-stage img { min-height: 202px; height: 202px; }
  .vts30-photo-detail { grid-template-columns: 78px 1fr; gap: 12px; margin-bottom: 12px; }
  .vts30-photo-detail img { width: 78px; height: 60px; }
  .system-product-photo figcaption { font-size: 8px; flex-direction: row; gap: 10px; padding-top: 10px; }
}
